Data to AI™ / Gemini/Google Ads

Query Google Ads from Gemini CLI and Code Assist

Pull Google Ads report data into scripts, notebooks and pull requests from the terminal, so tracking and feed problems surface before a release instead of in next month's report.

Better answers, fewer tokens.

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

Which search campaigns lost the most impression share to budget last month?

Gemini Answer · Google Ads

Competitor terms lost 44% of its eligible search impressions to budget and Generic - Running shoes lost 31%. Brand - Exact lost only 2%.

Campaign - NameCost Micros (Spend)Search Impression ShareSearch Budget Lost Impression Share
Competitor terms Campaign Report 5,41038%44%
Generic - Running shoes Campaign Report 12,88054%31%
Brand - Exact Campaign Report 3,24091%2%

Cost Micros (Spend) was divided by 1,000,000 to match the amounts in the Google Ads interface.

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

Questions Gemini can answer from your Google Ads data

Google Ads data comes as Reports with Metrics, Reports without Metrics and Keyword Planner Historical Metrics. You pick a report type such as campaign, keyword, search term or shopping, then the attributes, segments and metrics to extract.

Conversion value check after a tag change

Ask Gemini

Using the dataddo server, list each Campaign - Name from the Campaign Report for the last 7 days where Conversions is above 0 but Conversions Value is 0.

A developer who shipped a checkout change runs this the next morning. An empty list means conversion values still arrive; any row goes into the bug ticket.

Product feed gaps in the repo

Ask Gemini

From Shopping Performance View, find every Item ID with Conversions Value this month but an empty Brand or Product Type Level 1, and write them to feeds/missing-attributes.csv.

The engineer who maintains the product feed generator opens the CSV in Gemini Code Assist in VS Code, fixes the mapping and links the file in the pull request.

Keyword ideas into a notebook

Ask Gemini

Query Keyword Planner Historical Metrics for our seed list and save Keyword, Avg Monthly Searches, Competition and both top of page bids, divided by 1,000,000, to data/keyword-ideas.parquet.

A technical marketer clusters the ideas in a notebook next to the repo and proposes new ad groups, with no manual Keyword Planner export.

Google Ads 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 Google Ads 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 Google Ads to Dataddo Sign in with your Google Ads account in Dataddo and choose the datasets to sync, such as Campaign Report and Campaign Budget Report.
  3. 3
    Choose what Gemini can see Select the Google Ads data Gemini may query. Access is read-only, and data you don't select stays out of reach.
Gemini setup guide →
With vs. without

Google Ads in Gemini, with and without Dataddo

Without Dataddo With Dataddo Outcome for you
Ad hoc pulls from code Every one-off check needs its own Google Ads API client and query, so most checks never get written. Gemini CLI queries the extracted reports by entity and field name through one MCP server, and no Google Ads API code lives in the repo. Checks without API plumbing
Micros in generated files A script copies Cost Micros (Spend) into a CSV as is, and a stakeholder later reads spend a million times too high. The field carries its description from the semantic layer, so Gemini can divide micros by 1,000,000 before writing the file. Files in real currency
Control over each call A script with stored API credentials can pull any report at any time, and nobody reviews what it requested. Gemini CLI asks you to confirm each Dataddo tool call, and you decide per tool whether to choose Always allow. Every lookup visible
Project-scoped setup Each teammate wires up their own Google Ads access and the scripts in the repo assume different accounts. A .gemini/settings.json in the project holds the Dataddo server, and each person signs in with their own Dataddo account. Same setup for the team
Token consumption Gemini spends tokens exploring raw Google Ads 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

Google Ads datasets and the questions they answer in Gemini

The Google Ads 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
Campaign Report
  • Campaign - Name
  • Conversions
  • Conversions Value
  • Cost Micros (Spend)
  • Search Impression Share
  • + others
Which Campaign - Name values had Conversions last week but a Conversions Value of zero?
Campaign Budget Report
  • Campaign Budget - Amount Micros
  • Campaign Budget - Recommended Budget Amount Micros
  • Cost Micros (Spend)
  • + others
What is the total Campaign Budget - Amount Micros across all active budgets, converted to currency?
Keyword View Reports
  • Ad Group Criterion - Keyword - Text
  • Ad Group Criterion - Keyword - Match Type
  • Clicks
  • CTR
  • Cost Per Conversion
  • + others
Which Ad Group Criterion - Keyword - Text values run in more than one Ad Group Criterion - Keyword - Match Type?
Search Term View Report
  • Search Term View - Search Term
  • Search Term Match Type
  • Cost Micros (Spend)
  • Conversions
  • + others
Which Search Term View - Search Term values contain our brand name but matched under a non-exact Search Term Match Type?
Shopping Performance View
  • Item ID
  • Brand
  • Product Type Level 1
  • Conversions Value
  • Title
  • + others
Which Item ID values have Conversions Value this month but an empty Brand or Product Type Level 1?
Ad Group Ad Reports
  • Ad Group Ad - Ad - Responsive Search Ad - Headlines
  • Ad Group Ad - Ad Strength
  • + others
How many Ad Group Ad - Ad - Responsive Search Ad - Headlines does each ad carry, and does the count track Ad Group Ad - Ad Strength?
Keyword Planner Historical Metrics
  • Keyword
  • Avg Monthly Searches
  • High Top Of Page Bid Micros
  • Competition
  • Low Top Of Page Bid Micros
  • + others
Which Keyword ideas have more than 5,000 Avg Monthly Searches and a High Top Of Page Bid Micros below 2 in currency?
See all Google Ads 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

Google Ads and Gemini: FAQ

How do I connect Google Ads to Gemini?

Extract Google Ads reports such as the Campaign Report in Dataddo and attach them to a Google Gemini destination or AI Model. Add Dataddo under mcpServers in ~/.gemini/settings.json with httpUrl https://headless.dataddo.com/mcp-data, restart Gemini CLI, run /mcp auth dataddo and sign in.

Does this rely on a built-in Google Ads connection in Gemini?

No. Dataddo extracts the Google Ads reports into a flow, and Gemini CLI reads that flow through the Dataddo MCP server. The setup is the same as for any other source in Dataddo.

Why does Gemini CLI not find the Dataddo server after I edit settings.json?

Use the httpUrl key, not url, because url falls back to SSE, which Dataddo does not support. Leave out headers and oauth blocks, restart Gemini CLI and check /mcp.

Can I use the same Google Ads data in Gemini Code Assist?

Yes. Agent mode in VS Code reads the same settings.json as Gemini CLI. In IntelliJ, add the Dataddo server to the mcp.json of Gemini Code Assist.

Which Google Ads data can Gemini reach once I sign in?

Every flow or Context attached to an AI destination or AI Model in your Dataddo account, not only the Google Gemini ones. Keep unrelated Google Ads accounts out of AI destinations if Gemini should not see them.

Why are Performance Max campaigns missing from my ad group query?

Google reports Performance Max only at campaign level. Add a Campaign Report source to the flow so Gemini can include those campaigns.

Can Gemini CLI pause campaigns or change bids in Google Ads?

No. Gemini queries extracted data through the semantic layer by entity and field name. Dataddo never accepts SQL from the model and nothing is written back to Google Ads.

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.