# The YouTube Data API search quota runs out after a few searches. How do I search more?

> YouTube's Data API allows 100 search.list calls a day by default. How to run more YouTube keyword searches: a per-page search API, a hybrid with videos.list, and costs.

Canonical page: https://okdata.online/answers/youtube-search-quota-exceeded/

**Short answer: **Run the searches through YouTube video search instead, which has no daily cap: $0.004 per page of about 20 videos with views and channel. Keep the official videos.list (1 quota unit) for likes and comment counts if you have a key, and the daily search limit stops mattering.

You track 30 keywords for a client and read five pages of results for each, every morning. That is 150 search calls a day. Google's [quota page](https://developers.google.com/youtube/v3/determine_quota_cost) gives a new project 100 `search.list` calls per day in a bucket of their own, and every extra page of results counts as another call. The tracker stops at keyword 21, and the quota resets at midnight Pacific time.

You can apply to Google for a higher quota, which means an audit of your app and a wait. Or you can move the searches somewhere that charges per page instead of capping them.

## Search without a daily cap

[YouTube video search](/apis/youtube/videos/search/) takes `query` and `sort` (`relevance`, `latest` or `most_viewed`) and returns about 20 videos a page: title, link, view count, channel, publish time and thumbnail. Page with `cursor`; each page is one call.

```bash
curl -s -G "https://api.okdata.online/v1/youtube/videos/search" \
  -H "Authorization: Bearer $OKDATA_API_KEY" \
  --data-urlencode "query=standing desk review" \
  -d sort=most_viewed \
  -d fields=id,title,published_at,metrics.views,author.name
```

| Daily job | Calls | Cost per day |
|---|---|---|
| 30 keywords × 1 page | 30 | $0.12 |
| 30 keywords × 5 pages | 150 | $0.60 |
| 1,000 results | 50 | $0.20 |

## The hybrid most teams end up with

Search results here leave `metrics.likes` and `metrics.comments` empty (null, listed in `meta.unavailable`). If you need them, pass the IDs to the official `videos.list`, which costs 1 unit for up to 50 IDs. The 150 daily searches turn into about 60 units of the 10,000 you have, and the search bucket goes unused.

If you would rather not hold a Google key at all, [YouTube video detail](/apis/youtube/videos/get/) returns likes and comment counts for $0.004 per video.

## Gotchas

- `latest` is not a strict date order; results still come by relevance. Sort by `published_at` yourself when recency matters; it can be worked out from labels like 3 weeks ago, so treat it as approximate.
- `view=full` adds `ext.length_s`, useful for telling Shorts-length clips from long videos.
- Every page is a separate call. For daily monitoring, stop paging once you reach videos you saw yesterday.
- Results mirror what YouTube's own search shows; there is no filter for region or upload date.

## When the official API is enough

For a handful of keywords a day, the free quota covers it, and you get Google's own filters such as `publishedAfter` and `regionCode`. Request more quota if your use fits YouTube's policies and you can wait for the review. For a keyword tracker across many topics, see the [content research solution page](/solutions/content-research/) and the [price list](/pricing/).

## Endpoints used

- [YouTube video search](https://okdata.online/apis/youtube/videos/search/) `youtube.videos.search`: $0.004 per call · about 20 videos per page

Updated 2026-11-12
