Home > Destinations > MySQL > Google Ads

Connect Google Ads to MySQL

Connect Google Ads to MySQL and export selected accounts, metrics, and dimensions to your MySQL project.

Configure the historical window, destination table, and recurring schedule without maintaining a Google Ads API pipeline.

Used by the world's leading companies

Export Google Ads data to MySQL

Catchr handles extraction, normalization, and loading automatically.

Centralize

Centralize Google Ads data in MySQL

Bring all your Google Ads data into your warehouse and make it available for analytics, machine learning, and internal applications.

Data freshness

Keep your MySQL tables up to date

Automatically sync new data from Google Ads so every dashboard, model, and report works with fresh information.

Analysis

Unify Google Ads with the rest of your business data

Join marketing, finance, CRM, and product data inside the same warehouse.

Google Ads metrics and dimensions available in MySQL

Access 118 metrics and 409 dimensions from Google Ads connectors including Cost, Clicks, Impressions, Conversions, Conv. rate, CTR, Avg. CPC, ROAS, Campaign Name, Campaign state, Ad group, Ad group state, Advertising Channel, Keyword Match Query, Query Match type, Country Code and many more...

118

Metrics availables

409

Dimensions availables

Connect Google Ads to MySQL in minutes

Move your data from Google Ads to MySQL with a simple setup. Once connected, Catchr handles the ingestion automatically so your warehouse stays up to date without manual work.

Step one

Connect your Google Ads account

Authenticate your Google Ads account securely in Catchr. No custom scripts, API maintenance, or engineering work required.

Client A · Connected sources
5 sources ready
Google Ads 3 advertising accounts Connected
Google Ads 2 advertising accounts Connected
Google Analytics 4 1 web property Connected
HubSpot 1 CRM portal Connected
Step two

Choose the MySQL destination

Connect your existing MySQL database with its host, port, username, password, and database name. Then create the datastream that defines where the selected source data should go.

Destination / MySQL Required fields
Host Required
analytics-db.internal
Username Required
catchr_writer
Password Required
••••••••••••
Database Required
marketing_reporting
Step three

Keep your MySQL tables updated

Choose the fields, initial history, partition field, and recurring schedule for the job. Catchr refreshes the configured import window in your MySQL table.

Export job / MySQL Example
Database Destination
marketing_reporting
Table Per job
google_ads_campaigns
Recurring schedule Choose a cadence
Every 6 hours
Daily · 06:00
Weekly · Mon
Export readySelected fields · configured history
Every 6 hours

Review 30-day Google Ads campaign delivery in SQL.

This example summarizes spend, impressions, clicks, and click-through rate by campaign.

Google Ads.sql
BigQuery SQL
30-day window
SELECT
  campaign_name,
  SUM(spend) AS spend,
  SUM(impressions) AS impressions,
  SUM(clicks) AS clicks,
  SAFE_DIVIDE(
    SUM(clicks),
    SUM(impressions)
  ) AS ctr
FROM `your_project.marketing_raw.google_ads_daily`
WHERE date >= DATE_SUB(
  CURRENT_DATE(),
  INTERVAL 30 DAY
)
GROUP BY campaign_name
ORDER BY spend DESC;
Illustrative SQL — adapt it to the fields and schema selected in your export. Standard SQL

Connect more table to your Google Ads data

Open the dedicated route for each platform. Its field catalog, reporting grain, historical constraints, and warehouse use cases should be specific to that source.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Before you schedule the job.

Answers about MySQL setup, available source data, schedules, table updates, and SQL use cases.

Which steps connect Google Ads with a MySQL destination?

Register Google Ads, save the MySQL connection details, and pair both systems in a datastream. The associated job previews and writes the selected columns to "ad groups".

What schema can I build from Google Ads data in MySQL?

Select concrete Google Ads fields such as Impr. (Abs. Top) %, Active View avg. CPM, Active View viewable CTR, and Accent color (responsive). You can rename the chosen columns, preview the result, and write them to MySQL tables such as accounts, advertisers, and campaigns.

How are Google Ads history and recurring MySQL loads scheduled?

The "ad groups" job can begin with a historical Google Ads fetch and continue on a recurring schedule. Available history and frequency depend on the source API and your plan.

How does Catchr update existing Google Ads records in MySQL?

Select a valid date field when configuring the Google Ads job for "ad groups". Catchr deletes and rewrites the scheduled window, limiting duplicate rows across overlapping runs.

Which dashboards can use Google Ads data stored in MySQL?

With Google Ads data, a MySQL query can summarize spend, impressions, clicks, and click-through rate by campaign. Turn Impr. (Abs. Top) % and Active View avg. CPM into a stable MySQL view that analysts and reporting tools can query repeatedly.

Does my MySQL database need to exist before I connect it?

Yes. Connect an existing MySQL database first. The Catchr job creates and populates the destination table you configure inside that database.

Can I load several marketing sources into the same MySQL database?

Yes. Create a separate datastream and job for each source, write each export to its own table, then combine the data downstream with SQL, views, or your BI tool.

Still have a question ? 

Our teams is always here to responds to any question you could have about our data connector. 

Your next MySQL reporting table should not start with five exports.

Connect your accounts, choose the fields, then schedule the data your team needs in MySQL.

14 days free-trial
No credit-card required
100+ sources