---
title: Credits & billing
slug: credits
eyebrow: Getting started
nav_group: Getting started
nav_label: Credits & billing
nav_order: 30
---

# Credits & billing

API usage is metered in **credits**. Each request consumes a known number of credits based on what it returns — nothing else.

Your monthly subscription includes a credit allowance; top-ups cover usage beyond it. Credits are only drawn on a successful `2xx` response.

## One price per request, regardless of data age {#one-price-per-request-regardless-of-data-age}

**A request costs the same whether it reads yesterday's data or data from two years ago.** There is no surcharge for historical periods, and no "first request vs. repeat request" distinction. Querying a 90-day-old broadcast is not technically more expensive than querying last night's, so it is not priced as such. You can read the credit cost of an endpoint and know exactly what every call to it will draw.

## What a request costs {#what-a-request-costs}

Costs follow the shape of the request, not the size of the data. Anything about **one** channel, stream or game is 1 credit. Discovery — a ranked list of many channels — costs more, because that is where the value of the dataset sits.

| Operation type | Cost | What it covers |
| --- | --- | --- |
| Single channel — any endpoint | 1 | Standard stats, extra metrics, paid subscribers, chat analytics |
| Single channel — audience | 2 | Geography + demographics in [one joint endpoint](/api/docs/channels#channel-audience) — twitch, kick, youtube |
| Single stream — any endpoint | 1 | Standard, extra, all stream games, paid subscribers, chat analytics, [chat logs](/api/docs/streams#stream-chat-logs) |
| Single stream — 5-minute intervals | 3 | The whole broadcast as a [5-minute series](/api/docs/streams#stream-intervals); chat metrics add 2, subscriber metrics add 1 |
| Single game / category | 1 | Viewership and channel metrics for one game |
| List — light filters | 5 | Discovery by platform, language, game, partnership, publisher |
| List — segment filters | 10 | Discovery by country, gender, VTuber, age, ranges, etc. |
| Live channels list — light filters | 10 | Real-time list; carries a live surcharge over standard lists |
| Live channels list — country filter | 20 | Real-time list, segment filter |
| Contact data — per channel with contacts | 1 | Dynamic surcharge on channel lists with `business_contacts=true` |
| Free request | 0 | Top 100 Twitch channels, last 7 days |

> [!INFO] The interval series is priced per call, not per point
> The [5-minute interval series](/api/docs/streams#stream-intervals) costs **3 credits** for one broadcast whatever its length — a 3-hour stream and a 12-hour stream cost the same, and narrowing it with a `time` window does not change the price. `chat_metrics=true` adds 2 and `subs_metrics=true` adds 1, so a call is 3, 4, 5 or 6 credits. Ask for a block the stream has no data for and the surcharge is not applied: the block comes back `null` and you are charged for what you got.

> [!INFO] Combining list filters
> When you combine filters from different tiers in one list request, you are charged the **higher** tier — never the sum. A request combining language (5) and country (10) costs **10 credits**, not 15. The [live channels list](/api/docs/live#live-channels) is priced separately — 10 (light) / 20 (country) per page — because the data is captured and served in real time.

## One dynamic cost: contact data {#one-dynamic-cost-contact-data}

Every cost above is fixed and known before you send the request. There is one exception: adding [`business_contacts=true`](/api/docs/lists#list-emails) to a channel list appends each channel’s business email and social links, and charges **1 credit per channel that has at least one of them**, on top of the list cost. A channel with neither an email nor a single social account is free, and a channel with an email and four socials still costs 1. So the total is **list cost + number of channels with contact data** — at most 100 extra per page.

> [!INFO] Read the charge from the response
> Because the amount depends on the data, take it from `x-credits-charged` (total for the request) and `meta.business_contacts.credits_for_contacts` (the contact part) rather than computing it in advance. Available on the [list of channels](/api/docs/lists#list-channels), [top by subscribers](/api/docs/lists#list-subs) and [top by bits](/api/docs/lists#list-bits); not on the [live channels list](/api/docs/live#live-channels).

Exact per-endpoint costs are listed on each [channel](/api/docs/channels), [stream](/api/docs/streams), and [list](/api/docs/lists) page.