# How fresh is the data from a social media API?

> How current the numbers from a social data API are for Douyin and Weibo hot lists, TikTok videos and X posts, how to tell from each response, and what refreshing costs.

Canonical page: https://okdata.online/answers/how-fresh-is-social-media-api-data/

**Short answer: **On okdata each call reads the platform at the moment you make it, and every response records when the data was read and whether a short-lived cache answered instead. So a number is as fresh as your last call: refreshing a TikTok video's stats costs $0.002, an X post $0.001, and the Douyin hot search list $0.002.

A report says a competitor's video has 1.2 million views. As of when? If nobody can answer, the number is not much use, and arguments about [view counts that look wrong](https://apify.com/clockworks/tiktok-scraper/issues/reports-false-viewco-RjebcwuvF383T1pIi) usually come down to two readings taken at different times. Freshness is a property of each response, so the useful habit is to keep the timestamp with the number.

## What each response tells you

- `meta.fetched_at`: when the data was read from the platform.
- `meta.cached`: `true` only if a short-lived cache answered instead of a fresh read.

Every metric in the response is a snapshot as of `fetched_at`. Likes keep rising after you read them; nothing updates in place.

```bash
curl -s -G "https://api.okdata.online/v1/x/posts/get" \
  -H "Authorization: Bearer $OKDATA_API_KEY" \
  --data-urlencode 'url=https://x.com/user/status/1850000000000000000' \
  | jq '{fetched_at: .meta.fetched_at, cached: .meta.cached, metrics: .data.item.metrics}'
```

## How fresh do you need it, and what it costs

| Use | Endpoint | Refresh | Cost |
|---|---|---|---|
| Hot search tracking | [Douyin hot search board](/apis/douyin/trends/list/) | hourly for a day | $0.048 |
| Same for Weibo | [Weibo hot search](/apis/weibo/trends/list/) | hourly for a month | $1.44 |
| Campaign video stats | [TikTok video detail](/apis/tiktok/videos/get/) | 100 videos daily for 30 days | $6.00 |
| A viral post's reach | [X post detail](/apis/x/posts/get/) | every 15 minutes for 6 hours | $0.024 |

Most reporting needs daily numbers. Hot lists are the exception: they turn over within hours, so an hourly snapshot is what makes a history worth having.

## Things that look like staleness but are not

- **Platform-side delay.** Some platforms update public counts on their own schedule. Two reads a minute apart can differ by more than the real change, or not at all.
- **Hidden numbers.** When a platform does not show a metric publicly, it comes back null and `meta.unavailable` names it. A null is not an old value.
- **Your own cache.** A spreadsheet or dashboard that stores old responses will show old numbers. Show `fetched_at` next to every figure.

If you track numbers over time, poll at a fixed interval and store each snapshot with its timestamp, instead of overwriting the last value. The [trend research guide](/solutions/trend-research/) shows that pattern for hot lists.

## Endpoints used

- [Douyin hot search board](https://okdata.online/apis/douyin/trends/list/) `douyin.trends.list`: $0.002 per call · about 50 board entries per page
- [Weibo hot search](https://okdata.online/apis/weibo/trends/list/) `weibo.trends.list`: $0.002 per call · about 50 board entries per page
- [TikTok video detail](https://okdata.online/apis/tiktok/videos/get/) `tiktok.videos.get`: $0.002 per call
- [X post detail](https://okdata.online/apis/x/posts/get/) `x.posts.get`: $0.001 per call

Updated 2026-11-12
