# Is the YouTube Data API free?

YouTube. Checked October 2026.

Yes. Google does not charge for the YouTube Data API. Each Google Cloud project gets 10,000 units a day for most calls. Search has its own limit of 100 calls a day by default. Reading a video or a page of comments costs 1 unit. When a quota runs out, those calls fail until midnight Pacific Time.

There is no paid tier, so you cannot buy more quota. You ask for it through an audit. Captions only download for videos you can edit.

For public channels, videos, Shorts, comments, transcripts, and search, Openhandle reads YouTube for $0.0025 per request, with no daily quota and no Google Cloud project.

## GET /v1/youtube/search/posts?q={query}

```bash
curl "https://api.openhandle.dev/v1/youtube/search/posts?q=synthetic" \
  -H "Authorization: Bearer $OPENHANDLE_API_KEY"
```

```ts
import { OpenHandle } from '@openhandle/sdk';

const openhandle = new OpenHandle({ apiKey: process.env.OPENHANDLE_API_KEY! });
const page = await openhandle.youtube.search.posts.list({ q: 'synthetic' });

for (const video of page.data) console.log(video.metrics.views, video.title);
```

200 OK:

```json
{
  "platform": "youtube",
  "resource": "post",
  "capturedAt": "2026-10-26T18:33:16Z",
  "source": "live",
  "data": [
    {
      "id": "synthvid001",
      "type": "video",
      "title": "Synthetic video 1",
      "url": "https://www.youtube.com/watch?v=synthvid001",
      "approximateCreatedAt": "2026-10-25",
      "createdAtLabel": "1 days ago",
      "duration": 240,
      "metrics": { "views": 1200000, "isApproximate": true }
    }
  ],
  "meta": { "cursors": { "next": "b3BhcXVlLWN1cnNvcg" } }
}
```

Trimmed to one video and the fields this question needs. The query hits the Test dataset, so you can run it on a free Test key.

## How the YouTube Data API quota works

- **Most calls.** 10,000 units a day per project. Reading videos, channels, playlist items, or comments costs 1 unit a call.
- **Search.** 100 calls a day per project, in their own bucket since June 1, 2026.
- **More quota.** Through YouTube’s Audit and Quota Extension Form. YouTube first checks that your project follows its API terms.

Check [Google’s quota cost table](https://developers.google.com/youtube/v3/determine_quota_cost) for the current numbers. Google says the defaults can change. For every unit cost side by side, see [YouTube Data API pricing](/compare/youtube-data-api-pricing).

## How Openhandle bills

- **Per request.** $0.0025 per live request, lower at volume. A 24-hour cache hit costs less. A 30-day cache hit is free.
- **No daily quota.** Search costs the same as any other request. Your balance is the hard stop. You can set a monthly request cap on each key.
- **Failed requests are free.** You pay only when the API returns an answer.

## What you get

Channels with subscriber counts. Channel videos, Shorts, livestreams, and playlists. Single videos with exact view and like counts. Comments, replies, and transcripts. Search for videos, Shorts, channels, and playlists. Trending videos and the weekly YouTube Music charts. Every answer uses the same envelope as Instagram, TikTok, X, and Reddit.

## When this does not work

These answers are definitive. Store them, do not retry them.

| Situation | Status | Code |
|---|---|---|
| The channel or video does not exist | 404 | `PROFILE_NOT_FOUND or POST_NOT_FOUND` |
| The ID is not a valid YouTube ID | 400 | `INVALID_IDENTIFIER` |
| The cursor came from another request | 400 | `CURSOR_MISMATCH` |

```json
{
  "error": {
    "code": "POST_NOT_FOUND",
    "message": "This post was not found.",
    "requestId": "req_01m5…",
    "retryable": false
  }
}
```

Every new workspace starts with 100 free live requests, no card needed.

## Related

- [YouTube API](https://openhandle.dev/apis/youtube): Every YouTube endpoint with examples.
- [YouTube Data API pricing](https://openhandle.dev/compare/youtube-data-api-pricing): Units per call and what the quota buys.
- [Pricing](https://openhandle.dev/pricing): Every rate, the cache tiers, and the calculator.
