# Database stats

> How many titles, people, media, ratings and IDs the database holds, and how complete it is.

> Documentation index for agents: https://kinodata.space/en/llms.txt — the whole documentation in one file: https://kinodata.space/en/llms-full.txt

Request: `GET https://api.kinodata.space/v1.3/meta/stats`

A snapshot of the database: the landing page takes its numbers from it, and you can show them too or track growth. The snapshot is recomputed every few hours; the time is in `generated_at`. You can keep the response for an hour.

Most counters cover the whole database, shorts and announcements included. The `catalog` block describes the “clean” catalog, what a person sees: titles with 300 votes or more, without shorts and adult films. It shows how complete the data is: 89.6% of those titles have Kinopoisk, IMDb and TMDB IDs, and 97.6% have a Russian overview.

## Response fields

- `generated_at` (string) — When the snapshot was computed, ISO 8601 in UTC.
- `titles` (object) — Titles: `total` and by kind: `movies`, `series` (with miniseries and TV shows), `cartoons`, `anime`, `shorts`.
- `persons` (object) — People. The three sources aren’t fully merged, so the head count is a range: `total_min` is the largest source, `total_max` the sum of sources (it can be `null` until the snapshot is recomputed). Plus `with_photo` and `with_biography`.
- `companies` (integer) — Companies.
- `media` (object) — `images`, `videos`, and `trailers` among them.
- `episodes` (object) — Episodes: `total`, and `series`, how many series have them.
- `votes` (object) — Viewer and critic ratings: `total`, `sources` (how many sources), and the sum per source: `kp`, `imdb`, `tmdb`, `kinorium`, `letterboxd`, `rt`, `metacritic`. Letterboxd has more ratings than IMDb: *Barbie* has 5.1 million there against 0.7 million on IMDb.
- `awards` (object) — Awards: `nominations` (wins included), `wins`, `ceremonies`, `oscars`.
- `texts` (object) — `facts`, `quotes`, `faq`, `taglines`, `parental_guides`.
- `akas` (object) — Alternative titles: `total`, and `regions`, how many regions.
- `watch` (object) — “Where to watch”: `links`, `services`, and `titles`, how many titles have links.
- `classification` (object) — `countries`, `languages`, `subgenres`, `keywords`, `moods` and `earliest_year`.
- `release` (object) — `world_premieres`, `digital_releases`, `budgets`, `box_office`: how many titles have them.
- `ids` (object) — IDs: `total`, per catalog (`imdb`, `kp`, `tmdb`, `kinorium`), and `titles_in_2plus`, how many titles have IDs from two catalogs or more.
- `franchise_links` (integer) — Links within franchises.
- `intake` (object) — Growth: `daily_median`, the median of new titles per day over `window_days` days.
- `catalog` (object) — The “clean” catalog: its conditions `min_votes` and `excludes`, its size (`titles`, `movies`, `series`) and completeness in percent: `linked_pct`, with Kinopoisk, IMDb and TMDB IDs; `kp_imdb_pct`, with Kinopoisk and IMDb IDs; `poster_pct`, `overview_ru_pct`, `rated_3plus_pct`.
- `popularity` (array) — Completeness of the most popular titles: `top`, how many were taken; `linked_pct`, the share with Kinopoisk, IMDb and TMDB IDs; `all_ids_pct`, the share with IDs from all four catalogs.

## Errors

| status | code | when |
|---|---|---|
| 400 | `invalid_request` | A query parameter other than `lang`. |
| 401 | `unauthorized` | The `X-API-Key` header is missing, or the key is unknown or revoked. |
| 429 | `rate_limited` | The per-second rate limit or the daily quota is used up. |

Every code and what to do about it is on the [Errors](https://kinodata.space/en/docs/errors.md) page.

## Examples

### Snapshot

```bash
curl -H "X-API-Key: $KINODATA_KEY" \
  "https://api.kinodata.space/v1.3/meta/stats"
```

Response `200`:

```json
{
  "generated_at": "2026-10-12T12:23:50.968333464Z",
  "titles": {
    "total": 1439816,
    "movies": 709712,
    "series": 205938,
    "cartoons": 68900,
    "anime": 8830,
    "shorts": 446436
  },
  "persons": {
    "total_min": 5280041,
    "total_max": 13431951,
    "with_photo": 439134,
    "with_biography": 147813
  },
  "companies": 394809,
  "media": {
    "images": 9692643,
    "videos": 210043,
    "trailers": 118409
  },
  "episodes": {
    "total": 7160687,
    "series": 208110
  },
  "votes": {
    "total": 5107770117,
    "sources": 7,
    "kp": 1415059430,
    "imdb": 1562238698,
    "tmdb": 31064600,
    "kinorium": 46124910,
    "letterboxd": 2051246620,
    "rt": 1619408,
    "metacritic": 416451
  },
  "awards": {
    "nominations": 73381,
    "wins": 20683,
    "ceremonies": 29,
    "oscars": 2239
  },
  "texts": {
    "facts": 107166,
    "quotes": 16922,
    "faq": 65939,
    "taglines": 226237,
    "parental_guides": 22820
  },
  "akas": {
    "total": 2758617,
    "regions": 349
  },
  "watch": {
    "links": 156117,
    "services": 161,
    "titles": 61677
  },
  "classification": {
    "countries": 234,
    "languages": 172,
    "subgenres": 239,
    "keywords": 23059,
    "moods": 448,
    "earliest_year": 1888
  },
  "release": {
    "world_premieres": 764603,
    "digital_releases": 114736,
    "budgets": 64666,
    "box_office": 22899
  },
  "ids": {
    "total": 4005179,
    "imdb": 1132659,
    "kp": 843332,
    "tmdb": 1006866,
    "kinorium": 1022322,
    "titles_in_2plus": 1144249
  },
  "franchise_links": 1016842,
  "intake": {
    "daily_median": 465,
    "window_days": 30
  },
  "catalog": {
    "min_votes": 300,
    "excludes": [
      "short",
      "adult"
    ],
    "titles": 158575,
    "movies": 116393,
    "series": 27271,
    "linked_pct": 89.6,
    "kp_imdb_pct": 92.8,
    "poster_pct": 99.4,
    "overview_ru_pct": 97.6,
    "rated_3plus_pct": 70.5
  },
  "popularity": [
    {
      "top": 1000,
      "titles": 1000,
      "linked_pct": 99.8,
      "all_ids_pct": 99.8
    },
    {
      "top": 10000,
      "titles": 10000,
      "linked_pct": 97.4,
      "all_ids_pct": 97.2
    },
    {
      "top": 100000,
      "titles": 100000,
      "linked_pct": 91.1,
      "all_ids_pct": 89.5
    }
  ]
}
```
