Skip to main content
GET /v1/revenuecat/charts/:chartName
Returns time-series chart data from RevenueCat for a specific metric. Supports date ranges, resolution control, segmentation, and filtering. This is the same data that powers the RevenueCat dashboard charts.
Requires a RevenueCat secret API key (sk_xxx) and the Pro plan (free up to $2,500 MTR). Use the Chart Options endpoint to discover available resolutions, segments, and filters for each chart.

Path Parameters

NameTypeRequiredDescription
chartNamestringYesChart identifier (see Available Charts below)

Headers

NameTypeRequiredDescription
X-RC-KeystringYesYour RevenueCat secret API key (starts with sk_)
X-RC-ProjectstringNoRevenueCat project ID. Auto-detected if you have one project.

Query Parameters

NameTypeDefaultDescription
start_datestring28 days agoStart date in ISO 8601 format (e.g. 2025-01-01)
end_datestringtodayEnd date in ISO 8601 format (e.g. 2026-03-08)
resolutionstringvariesTime resolution: day, week, month, quarter, year
segmentstringSegment dimension (use chart options to discover available ones)
filtersstringJSON array of filter objects
selectorsstringJSON object of chart selectors
currencystringUSDISO 4217 currency code
aggregatestringaverage, total, or both — returns summary only, no time-series

Code Examples

curl -X GET "https://api.appeeky.com/v1/revenuecat/charts/revenue?start_date=2025-06-01&end_date=2026-03-08&resolution=month" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "X-RC-Key: sk_YOUR_REVENUECAT_SECRET_KEY"

Response

{
  "data": {
    "category": "revenue",
    "display_name": "Revenue",
    "display_type": "area",
    "description": "Revenue displays the revenue generated during a period...",
    "start_date": 1751241600,
    "end_date": 1774915200,
    "last_computed_at": 1772985539587,
    "resolution": "month",
    "segments": [
      {
        "chartable": true,
        "decimal_precision": 0,
        "description": "The total revenue generated in a given period, minus refunds.",
        "display_name": "Revenue",
        "tabulable": true,
        "unit": "$"
      },
      {
        "chartable": false,
        "decimal_precision": 0,
        "description": "The count of revenue generating transactions for the period.",
        "display_name": "Transactions",
        "tabulable": true,
        "unit": "#"
      }
    ],
    "values": [
      [1751241600, 0.0, 0.0],
      [1753920000, 0.0, 0.0],
      [1756598400, 0.0, 0.0],
      [1759276800, 0.0, 0.0],
      [1761955200, 0.0, 0.0],
      [1764547200, 0.0, 0.0],
      [1767225600, 11.6, 1.0],
      [1769904000, 0.0, 0.0],
      [1772323200, 0.0, 0.0],
      [1774915200, 0.0, 0.0]
    ],
    "summary": {
      "average": { "Revenue": 1.16, "Transactions": 0.1 },
      "total": { "Revenue": 11.6, "Transactions": 1.0 }
    }
  }
}

Response Fields

FieldTypeDescription
categorystringChart category (e.g. revenue, mrr, churn)
display_namestringHuman-readable chart name
display_typestringChart visualization type (area, bar, line)
descriptionstringDetailed description of what the chart shows
start_datenumberUnix timestamp of the data range start
end_datenumberUnix timestamp of the data range end
last_computed_atnumberUnix timestamp of when data was last computed
resolutionstringTime resolution used (day, week, month, etc.)
segmentsarrayMetadata for each data column in values
valuesarray[]Time-series data: [timestamp, value1, value2, ...]
summaryobjectAggregated statistics (average, total)

Values Array

Each entry in values is an array where:
  • Index 0 = Unix timestamp for the period
  • Index 1+ = Values corresponding to each segment in order
For example, with the Revenue chart:
  • [1767225600, 11.6, 1.0] means: at timestamp 1767225600 → Revenue = $11.60, Transactions = 1

Available Charts

Chart NameDescription
revenueTotal revenue generated per period
mrrMonthly Recurring Revenue over time
mrr_movementMRR changes: new, expansion, contraction, churn
arrAnnual Recurring Revenue
activesActive subscriptions over time
actives_movementActive subscription changes
actives_newNew active subscriptions per period
churnChurn rate and churned subscribers
trialsActive trials over time
trials_movementTrial starts, conversions, and expirations
trial_conversionTrial-to-paid conversion rate
conversion_to_payingOverall conversion to paying customers
customers_newNew customers per period
subscription_statusBreakdown by subscription status
subscription_retentionCohort-based subscription retention
refund_rateRefund rate over time
ltv_per_customerLifetime value per customer
ltv_per_paying_customerLifetime value per paying customer
cohort_explorerCohort analysis explorer
non_subscription_purchasesNon-subscription purchase revenue

Errors

StatusCodeWhen
400MISSING_RC_KEYX-RC-Key header not provided
400INVALID_CHART_NAMEChart name is not one of the valid options
400PARAMETER_ERRORInvalid query parameter (e.g. bad date format)
401UNAUTHORIZEDInvalid RevenueCat API key
404RESOURCE_MISSINGProject or app not found / Charts not enabled