Data to AI™ / Gemini/YouTube

YouTube channel analytics in Gemini CLI and Code Assist

Give analysts and developers YouTube views, watch time, comments and playlist activity where they already work: the terminal, a notebook folder or the VS Code project of your docs site.

Better answers, fewer tokens.

  • Lower AI costs for the same work
  • More accurate, reliable answers
  • Read-only
  • Uses the YouTube data you already sync
  • SOC 2 Type II certified
Gemini CLI
Connected to Dataddo

Which traffic sources brought the most watch time to our September uploads?

Gemini Answer · YouTube Organic

Suggested videos drove 63% of watch time across these three sources, about twice as much as YouTube search, and held viewers longest at 46% average view duration.

Traffic Source TypeViewsWatch Time (Minutes)Average View Duration (%)
Suggested videos Owned Channel Videos Traffic Sources 48,200212,10046%
YouTube search Owned Channel Videos Traffic Sources 31,500101,00038%
External Owned Channel Videos Traffic Sources 9,80021,60027%

Views and Watch Time (Minutes) are summed per traffic source; Average View Duration (%) is weighted by Views, not a plain average of videos.

source
YouTube Organic · as of Mon 06:40 UTC
covers
1-30 Sep 2026
Example answer · fictional account and figures
YouTube in Gemini

Questions Gemini can answer from your YouTube data

YouTube Organic extracts your channel's non-paid performance: views, watch time, subscribers, traffic sources, audience, comments and playlists, per video and per day.

Embed audit for the docs site

Ask Gemini

Get Video ID, Title and View Count from Videos Metadata, then find every YouTube embed under docs/ that points to a video missing from that list.

A developer maintaining a product documentation site runs this in Gemini Code Assist before a docs release. Embeds of deleted or replaced tutorials show up as a list of files to fix, instead of as broken players that readers report weeks later.

Notebook input refreshed from the terminal

Ask Gemini

Write Date, Video ID, Views, Watch Time (Minutes) and Subscribers Gained from Owned Channel Videos Basic User Activity for the last 90 days to data/youtube_daily.csv.

A video analyst keeps a Jupyter notebook that charts growth per upload. Gemini CLI regenerates its input file on demand, and the commit history shows which version of the data each chart was drawn from.

Comment triage for a tutorial channel

Ask Gemini

Find this week's comments whose Text Original reports an error or a broken link, and draft one markdown entry per Video ID in issues/youtube-feedback.md.

A developer relations team runs a channel of product tutorials. Gemini turns viewer complaints into a reviewable file in the repo, so fixes to code samples are tracked like any other issue.

YouTube datasets and the questions they answer in Gemini →
Pricing

Priced per seat.

Data to AI™ is priced per seat, like the AI assistants your team already uses, with ~25% off on annual billing. Need tailored contracts or volume pricing? Talk to us about Enterprise.

Data to AITM

Serve governed business data to Claude, ChatGPT and other AI tools over MCP.

$10.49/month

per seat

3 seats minimum

Enterprise

Flexibly deploy Dataddo in any cloud or hybrid environment.

Custom

We have a payment model that works for you

See all plans and features →
Setup

Connect YouTube to Gemini step by step

  1. 1
    Connect Gemini to Dataddo Add the Dataddo server to settings.json in Gemini CLI, restart it and run /mcp auth dataddo to sign in. Gemini Code Assist in VS Code reads the same file.
  2. 2
    Connect YouTube to Dataddo Sign in with your YouTube account in Dataddo and choose the datasets to sync, such as Owned Channel Videos Basic User Activity and Owned Channel Videos Traffic Sources.
  3. 3
    Choose what Gemini can see Select the YouTube data Gemini may query. Access is read-only, and data you don't select stays out of reach.
Gemini setup guide →
With vs. without

YouTube in Gemini, with and without Dataddo

Without Dataddo With Dataddo Outcome for you
Scripted YouTube pulls Every team that wants YouTube numbers in a script registers its own Google OAuth client and handles tokens inside each repository. Google is authorized once in Dataddo by an account with admin-level permissions; Gemini CLI only signs in to Dataddo and reads the scheduled YouTube Organic flow. One Google authorization
What an agent may run A homemade script with broad API credentials runs whatever it was written to do, and nobody sees each request. Gemini CLI shows each Dataddo tool call and waits for your confirmation; choose Always allow only for the tools you are comfortable with. Each call approved
Viewer names in committed files A comment dump written into a repository brings Author Display Name with it, and the names stay in git history. Untick Author Display Name when refining the Comments attributes in Dataddo, so the files Gemini writes carry only comment text, likes and reply counts. No viewer names in git
Token consumption Gemini spends tokens exploring raw YouTube columns, sampling rows and retrying until it understands the data. Field definitions and relations are supplied up front, so the model skips the exploration and goes straight to the answer. Fewer tokens per answer
Answer quality Prone to wrong joins, invented fields and numbers that are hard to check. Answers grounded in defined fields. In the Dataddo benchmark, 78.5% of questions were answered correctly, against 65.5% with plain CSV files. Better answers
Datasets

YouTube datasets and the questions they answer in Gemini

The YouTube datasets marketing teams use most, with their real field names. Gemini queries them by name through the Dataddo semantic layer.

Dataset Metrics and attributes Ask Gemini
Owned Channel Videos Basic User Activity
  • Date
  • Video ID
  • Subscribers Gained
  • Views
  • Engaged Views
  • + others
Write Date, Video ID and Subscribers Gained for the last 28 days to a CSV that our growth notebook reads.
Owned Channel Videos Traffic Sources
  • Traffic Source Detail
  • Traffic Source Type
  • Views
  • Watch Time (Minutes)
  • + others
Which external sites in Traffic Source Detail send us viewers but are missing from the partner list in this repo?
Owned Channel Videos Demographics
  • Country Code
  • Views Percentage
  • Age Group
  • Gender
  • + others
Which Country Code holds more than 10% Views Percentage on each video, as JSON for our subtitle script?
Owned Channel Videos End Screens Performance
  • End Screen Element Clicks
  • End Screen Element Type
  • End Screen Element Click Rate
  • + others
Which videos show zero End Screen Element Clicks, so I can check the end screen template in our upload tooling?
Videos Metadata
  • Title
  • Published At
  • Tags
  • Video Duration
  • View Count
  • + others
Which videos have no Tags, listed by Title and Published At, so I can fix them in the upload manifest?
Comments
  • Video ID
  • Text Original
  • Like Count
  • Total Reply Count
  • + others
Which comments in Text Original report an error or a broken link, grouped by Video ID for the issue tracker?
Playlist Basic User Activity
  • Playlist ID
  • Playlist Starts
  • Views
  • Playlist Saves Added
  • + others
Which Playlist ID values had no Playlist Starts at all, so I can archive them in our channel config?
See all YouTube datasets, metrics and attributes on the connector page →
Benchmark

More right answers. Half the confident mistakes.

We asked 43 pre-registered questions of three real datasets - Google Search Console, HubSpot deals and Google Ads - and delivered the same rows to the same model in four ways. Only the data layer changed.

78.5%

of questions answered correctly - the best of the four delivery methods tested

2x

fewer confidently wrong answers - 14.0% of runs against 24.0% and 26.3%

2.8x

more correct answers on messy CRM data - better on 8 questions, worse on none

Answered correctly All 43 questions - higher is better
Wrong, but stated as fact Share of runs - lower is better

Same model, prompts and rows in every condition; 759 graded runs, ground truth frozen before any run. On Google Search Console alone, documented CSV files did as well as Data to AI™ - the advantage comes from messier data such as HubSpot deals.

Read the benchmark →
FAQ

YouTube and Gemini: FAQ

How do I connect YouTube to Gemini?

Create a YouTube Organic source in Dataddo with datasets such as Videos Metadata and Owned Channel Videos Basic User Activity, and attach it to a Google Gemini destination or AI Model. Add the httpUrl https://headless.dataddo.com/mcp-data under mcpServers in ~/.gemini/settings.json, restart Gemini CLI and run /mcp auth dataddo to sign in.

Does Gemini pull YouTube data through a Google connection here?

No. This setup runs through Dataddo: the YouTube Organic source extracts your channel data on a schedule, and Gemini CLI reads it from the Dataddo Data Access MCP server after you sign in with your Dataddo account.

Should the Dataddo server go in the global or the project settings.json?

Use ~/.gemini/settings.json to reach YouTube data from every project, or .gemini/settings.json in one repository to limit it there. In both cases use the httpUrl key, since url falls back to SSE.

Can I sign in to Dataddo from Gemini CLI with my Google account?

No. Google and Microsoft SSO are not offered for this sign-in; use your Dataddo email and password, with MFA if prompted. Gemini CLI opens the sign-in page in a browser, so it needs one on the same machine.

Do I set a date range for YouTube data in Gemini?

Not in the source. YouTube Organic datasets do not use a date range, so each scheduled run pulls all currently available data. Limit the period in your question, for example by Date.

Can Gemini Code Assist read the same YouTube flows?

Yes. Agent mode in VS Code reads the settings.json that Gemini CLI uses. In IntelliJ, Gemini Code Assist has its own mcp.json, where you add the Dataddo server separately.

Can Gemini rename videos or edit Tags on YouTube?

No. The Data Access MCP server is read-only over the extracted data. Gemini asks for entities and fields by name, Dataddo never accepts SQL from the model, and nothing is written back to your channel.

New from Dataddo · Data to AI™

Ask Claude or ChatGPT about your ads, analytics and CRM

“What did a new lead cost us last week, by paid channel?”

Connect 400+ sources once and get the answer right in your AI chat, without building a report. Better answers: your metrics are defined once, so the AI doesn't have to guess.