Google hub

Google Company Ads API

Pull a company's public Google Ad Transparency creatives as structured rows — domain or advertiser id in, paginated ads out.

GET /v1/google/ad-library/companies/ads

25 credits per successful request.

About this endpoint

Google Ad Transparency shows which creatives a company runs on Search, YouTube, Maps, Play, and Shopping. The public UI is fine for a one-off check. It is a poor fit when you want recurring competitor snapshots, date-bounded windows, or the same schema you already use for Meta Ad Library rows.

`GET /v1/google/ad-library/companies/ads` requires either `domain` (for example `lululemon.com`) or `advertiserId` from Google Ad Transparency. Optional filters: `topic` (`all` or `political` — `region` is required when `topic` is `political`), `region` as a two-letter country code, `startDate` / `endDate` as `YYYY-MM-DD`, `platform` (`google_search`, `youtube`, `google_maps`, `google_play`, `google_shopping`), and `format` (`text`, `image`, `video`). Successful responses set `data.lookupStatus` to `found` or `not_found`, return creatives under `data.ads` (ids, format, ad URL, advertiser name, domain, show dates), include `data.adsEstimate` when Google reports one, and paginate with `data.page.hasMore` / `data.page.nextCursor`. Bill from `meta.creditsCharged`.

This route lists ads for a known company or advertiser. When you only have a brand name, search advertisers first with `GET /v1/google/ad-library/advertisers/search`, then pass `advertiserId` here. For one known creative URL, use `GET /v1/google/ad-library/ads`. Pair with Facebook Ad Library when you track the same brand on Meta and Google with one API key.

Google Company Ads API FAQ

What does the Google Company Ads API return?

data.lookupStatus (found or not_found), a page of creatives under data.ads (advertiserId, creativeId, format, adUrl, advertiserName, domain, imageUrl when present, firstShown, lastShown), data.adsEstimate when Google reports one, and data.page for cursor pagination. Each response uses the shared Social Fetch envelope with meta.requestId and meta.creditsCharged.

How do I list Google Ad Transparency ads for a company?

Send GET /v1/google/ad-library/companies/ads with x-api-key and either domain or advertiserId. Optionally add topic, region, startDate, endDate, platform, format, and cursor. Full enums and examples are in the API docs.

How much does Google company ads cost?

Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged — that field is the billing source of truth. Each paginated page is a separate billed request.

Do I need domain or advertiserId to list company ads?

Provide at least one. Use domain when you know the company website. Use advertiserId when you already have a Google Ad Transparency advertiser id (often from GET /v1/google/ad-library/advertisers/search).

How is company ads different from advertiser search?

Advertiser search finds Google Ad Transparency advertiser entities by name. Company ads lists creatives for a known domain or advertiserId. Search first when you only have a brand string; use company ads when you already have an id or domain.

How does pagination work on Google company ads?

When data.page.hasMore is true, pass data.page.nextCursor as the cursor query param on the next request. Keep the same domain or advertiserId and filters while paginating.

Can I filter by Google surface, creative format, or date range?

Yes. platform accepts google_search, youtube, google_maps, google_play, or google_shopping. format accepts text, image, or video. startDate and endDate use YYYY-MM-DD; endDate must be on or after startDate when both are set. For topic=political, region is required.

Do I need a Google Ads account to read Ad Transparency company ads?

No. You authenticate to Social Fetch with an API key. The route reads public Ad Transparency-style company ads; it does not act on behalf of an ads account you manage. Google Ad Transparency only includes public ads.