Introduction
This page outlines the key performance indicators tracked by Poolside and explains the detailed events you can use to measure Poolside’s impact. Poolside tracks interactions between developers and the model. By integrating these metrics into your own data stores and business intelligence systems, you can understand how Poolside enhances your development processes.Important: This page outlines the metrics available to you. Poolside does not have access to this data. For information about the metrics you share with Poolside, see Billing metrics.
Out-of-the-box metrics
Central to Poolside’s mission is enhancing your development velocity, productivity, and developer satisfaction. We understand that many organizations track metrics such as Cycle Time to measure the effectiveness of their development process. However, Cycle Time is a lagging indicator that often does not reflect developers’ day-to-day experiences. While these long-term metrics are important, they typically take months to reflect significant changes. At Poolside, we focus on leading indicators that demonstrate impact over shorter periods so you can observe improvements more quickly. These indicators fall into three core metric areas: impact, quality, and engagement.Impact
Impact measures how Poolside improves the effectiveness of your development organization. External factors influence these metrics, so do not interpret them in isolation, but use them as key validation points to track. Developer throughput: We assess improvements in developer throughput by comparing productivity before and after Poolside adoption, tracking the number of daily pull requests (PRs) per developer. PRs are an excellent proxy metric for measuring developer productivity, as they represent the work an element of a team can accomplish daily. Developer satisfaction: We provide customizable qualitative surveys to measure how developers feel about Poolside. You can tailor these surveys to align with your organization’s needs and culture.Quality
Poolside collects the following metrics as part of your deployment:- Apply rate: The frequency of developers applying code completions without modifications.
- Review rate: The frequency with which developers use the review function in chat to understand proposed changes.
- Edit rate: The number of times developers modify code completion or chat suggestions.
- Discard rate: How frequently developers discard chat suggestions.
Engagement
To understand how users are adopting different aspects of Poolside, we track the following engagement metrics:- Number of unique users engaging with the chat panel
- Number of unique users utilizing code completion features
- 90th percentile (P90) of prompts per user
- Distribution of prompts across different coding languages
Metrics collection
Poolside uploads usage metrics in raw form to a customer-provided S3 bucket. A nightly aggregation cron job runs in Kubernetes to collect the previous day’s usage metrics and consolidate them into a single JSONL file:Event tracking
Poolside provides a comprehensive set of metrics out-of-the-box, but we understand that you may want to extend the scope of Poolside’s reporting. To facilitate this, Poolside exposes telemetry events so you can explore the data further and integrate it with existing reporting solutions.Event structure
Each event captured by Poolside contains the following information:Event types
Poolside tracks various event types that correspond to user interactions and system responses. These events calculate the quality and engagement metrics described earlier and provide more detailed insight into how developers use the product. The events fall into two categories: chat events and completion events.Chat events
prompt_started: Triggered when a user begins a new prompt to Poolside
prompt_completed: Triggered when Poolside finishes responding to a prompt
response_regenerated: Triggered when the user requests a regeneration of a Poolside response.
task_started: Triggered when a user initiates a new task.
task_completed: Triggered when a task is marked as completed.
task_canceled: Triggered when a user cancels a task before completion.
task_reopened: Triggered when a previously completed or canceled task is reopened.
rated_thumbs_up: Triggered when a user accepts and rewards a Poolside response.
rated_thumbs_down: Triggered when a user declines and applies a penalty to a Poolside response.
Completion events
completion_provided: Triggered when Poolside provides a code completion suggestion.
completion_accepted: Triggered when a user accepts a Poolside code completion suggestion.
completion_accepted_partially: Triggered when a user accepts only part of a Poolside code completion suggestion.
completion_edited: Triggered when a user modifies a Poolside code completion suggestion before accepting.
completion_rejected: Triggered when a user rejects a Poolside code completion.