Skip to main content

Google Ads — Data Mapping

B
Written by Ben Keeling

The objects we sync from your Google Ads account, the exact fields we read for each, and how they map into Medialake.


Medialake syncs your Google Ads account structure (including accounts under a manager/MCC), the campaign hierarchy — both traditional campaigns and Performance Max — the image and YouTube assets behind your ads, and their performance metrics. Everything is read-only, via Google's official Google Ads API. We only read the fields listed on this page, nothing else.

Objects at a glance

Google Ads object

What it is

Why we sync it

An account that manages other accounts

Lets you connect once and browse every account under it

An individual Google Ads account

Captures the hierarchy of metrics and creatives within the accounts you give access to

Top level of the hierarchy

Captures the hierarchy, so metrics and creatives roll up the same way as in Google Ads

Grouping of ads within a campaign

Captures the hierarchy, so metrics and creatives roll up the same way as in Google Ads

The individual ad

The object metrics relate to — performance is captured per ad

Performance Max's equivalent of an ad group

The object metrics relate to for Performance Max campaigns

A reusable piece of creative (image, video, text)

Medialake ingests image and YouTube video assets as files

Manager & customer accounts

We list the accounts the connecting person can access — directly or through a manager account (MCC) — so you can choose what to sync. For each synced customer account we store its ID, name, and billing currency.

Fields we read:customer.id, customer.descriptive_name, customer.currency_code, and for accounts under a manager: customer_client.client_customer, customer_client.descriptive_name, customer_client.manager, customer_client.level, customer_client.status

Campaigns, Ad groups & Ads

We read the campaign tree for each synced account, preserving the same hierarchy you see in Google Ads. Two structures exist:

  • Traditional campaigns: campaign → ad group → ad. For each level we read id and name, plus the ad's type and its asset references across ad formats (responsive search/display, video, app, Demand Gen, local, and legacy display ads) — these tell us which media each ad uses.

  • Performance Max campaigns: campaign → asset group. We read id, name, and status at each level, plus the assets attached to the group.

Assets

Google Ads assets of type image and YouTube video become files in Medialake:

  • Image assets are ingested via their full-size image URL, with dimensions, file size, and MIME type as metadata.

  • YouTube-hosted videos become video files — carrying the video ID, title, and thumbnail from YouTube.

Fields we read:asset.id, asset.name, asset.type, asset.final_urls, asset.image_asset.full_size.url, asset.image_asset.full_size.width_pixels / height_pixels, asset.image_asset.file_size, asset.image_asset.mime_type, asset.youtube_video_asset.youtube_video_id, asset.youtube_video_asset.youtube_video_title, asset.call_to_action_asset.call_to_action

Performance metrics

Metrics are captured per ad (traditional campaigns) and per asset group (Performance Max), at a lifetime level plus weekly buckets for trends over time. The full list and how each maps to Google's fields is in the Metrics Reference.

How it maps into Medialake

Manager account (MCC)└─ Customer account (stored with ID, name, currency)├─ Campaign│   └─ Ad group│       └─ Ad ──── metrics (per ad, over time)│           └─ Assets → Files (image / YouTube video)└─ Performance Max campaign└─ Asset group ──── metrics (per asset group, over time)└─ Assets → Files (image / YouTube video)

Everything on this page is read-only — see Authentication for the permissions behind it.

Further reading (Google documentation)


Questions about a specific field? Contact [email protected].

Did this answer your question?