query_metrics
Query Roblox experience analytics time series for metrics like DAU, revenue, retention, and crash rate. Filter by dimensions and granularity to get bucketed data points with status flags.
Instructions
Query a time series for one analytics metric of a Roblox universe (experience): DAU, revenue, retention, playtime, crash rate, funnels, custom events, and more. Returns data points bucketed by granularity, optionally broken down by dimensions (e.g. Platform, Country) and filtered. Each data point has a UTC 'time', a numeric 'value' (or 'stringValues' for text metrics), and may carry a 'status' of Valid, Projected, or NotStatisticallySignificant. Slow queries are polled automatically; if the response has done: false, call get_operation with its 'path'. Requires an API key with the universe.analytics:read scope.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max number of breakdown series to return. Only applies with granularity None. | |
| filter | No | Restrict results to rows matching every filter. The dimension must be supported by the metric. Use list_dimension_values to discover valid values. | |
| metric | Yes | Metric name, case-sensitive, e.g. DailyActiveUsers, DailyRevenue, ForwardD1Retention, ClientCrashRate15m. Call list_metrics to see all names, their supported granularities, and their supported dimensions. | |
| endTime | Yes | Range end, exclusive, RFC 3339 UTC, e.g. 2026-02-01T00:00:00Z. | |
| breakdown | No | Dimensions to group by, e.g. ['Platform'] or ['Country', 'AgeGroupV2']. Each series in the response carries its 'breakdowns' values. Must be supported by the metric. | |
| startTime | Yes | Range start, inclusive, RFC 3339 UTC, e.g. 2026-01-01T00:00:00Z. | |
| universeId | Yes | The Roblox universe (experience) ID. Found on the Creator Dashboard overview page. | |
| granularity | Yes | Bucket size. OneDay works for all metrics; OneWeek/OneMonth/None for most engagement, monetization and acquisition metrics; OneMinute/HalfHour/OneHour for performance metrics. None gives one data point for the entire range. | |
| pollTimeoutSeconds | No | How long to wait for a slow query before returning the pending operation (default 60). If the result comes back with done: false, pass its 'path' to get_operation later. |