Google Ads & Webhook Alerts
Pricing
from $1.00 / 1,000 results
Google Ads & Webhook Alerts
Track competitor Google Ads 4x cheaper and faster. Get automated webhook alerts on new launches and calculate ad longevity.
Pricing
from $1.00 / 1,000 results
Rating
0.0
(0)
Developer
Khas-Erdene Tsogtsaikhan
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 hours ago
Last modified
Categories
Share
Google Ads Transparency Competitor Monitor & Webhook Alerts
An ultra-lightweight, workflow-native intelligence tool built to track competitor ad creative velocity and send real-time alerts when new creatives appear. It avoids slow, heavy browser-automation workflows and manual Ads Transparency Center checking by using list-only creative data surfaced through Google's web interface.
Provide a list of Advertiser IDs (AR...), set a schedule, and let this actor automatically diff incoming creatives against saved baselines so your team can react when a competitor launches new creative.
Why Use This Monitor Instead of a Standard Scraper?
Standard scrapers often dump large, unstructured CSV files that require formulas or scripts to analyze. This actor functions as a scheduled competitor monitoring system designed to plug into your existing growth stack, such as Clay, n8n, Make, Slack, or Discord.
| Capabilities & Workflows | Google Ads Transparency Center | Standard Scrapers | This Monitor |
|---|---|---|---|
| Scheduled Sweeps | Manual | Complex setup | Out-of-the-box |
| Change/Delta Detection | None | Usually none | isNewSinceLastRun |
| Webhook Alerting | None | Usually none | Instant JSON payload |
| Ad Longevity Tracking | None | Usually manual | Calculated active days |
| LLM-Ready Output | HTML/UI only | Often nested JSON | Structured Markdown |
| Execution Speed | Manual browsing | Slow when browser-based | Lightweight HTTP requests |
| Compute Run Costs | Free manual use | Often higher with browser automation | Small list-only runs |
Key Features & Capabilities
Automated Change Monitoring (monitorMode)
Automatically persists baseline run states in a named key-value store. On subsequent runs, it compares the current creative catalog, detects newly launched ads, and flags them as isNewSinceLastRun: true.
Direct Webhook Integrations
Input an n8n, Make, Zapier, Slack, or custom webhook URL. The actor can trigger an HTTP POST payload summarizing changes only when new ads are detected, or on every successful monitor run if notifyOnlyOnNew is disabled.
Computed Ad Longevity
Automatically calculates the age of every creative in days (adLongevityDays) from firstShown and lastShown. Use it to prioritize competitors' longer-running creatives for review.
LLM-Friendly Markdown
Every creative output includes a pre-formatted Markdown summary block (llmMarkdown) for RAG pipelines, Claygent-style workflows, AI agents, or internal alert summaries without custom parsing.
HTTP-First Efficiency
This actor uses the same publicly accessible Ads Transparency Center data surfaced by Google's web interface, accessed through an undocumented internal JSON-RPC endpoint discovered during live testing. It is designed to stay list-only and lightweight rather than launching a browser or downloading assets.
Honest Limitations (Read Before Running)
This is a list-only creative monitor designed for fast, scheduled delta sweeps. To keep runs lightweight and reliable, the following features are intentionally out of scope:
- No Ad Copy Extraction: It does not extract responsive text ad headlines or body descriptions in this version.
- No Destination/Landing URLs: It does not follow redirect chains or extract final competitor landing pages.
- No Direct Asset Downloading: It returns Google's preview URLs but does not archive raw media files locally.
- No Autocomplete Search: You must supply verified Google Ads advertiser IDs starting with
AR.... It does not perform domain-to-ID, keyword, or advertiser-name resolution. - No Browser Automation: It does not use browser rendering, stealth, CAPTCHA solving, or anti-bot bypass logic.
If you need deep post-click intelligence, landing-page extraction, or raw creative file archiving, a browser-heavy database scraper may be a better fit.
Step-by-Step Scheduled Monitoring Setup (Clay & n8n)
-
Find your Advertiser ID: Go to
https://adstransparency.google.com, search your competitor, and copy theAR...ID from the browser URL. -
Build your Schedule: In the Apify Console, go to the Schedules tab and set the actor to run daily or weekly.
-
Configure the Input:
{"advertiserIds": ["AR07085335169422327809"],"monitorMode": true,"maxAdsPerAdvertiser": 50,"minimumLongevityDays": 0,"webhookUrl": "https://your-n8n-or-make-webhook-url.com","notifyOnlyOnNew": true}
- Trigger Actions: Set your downstream webhook to read the
newCountvalue. IfnewCount > 0, use n8n or Make to push generatedllmMarkdownblocks into your team's Slack, Discord, CRM, or research workflow.
Input
| Field | Type | Default | Notes |
|---|---|---|---|
advertiserIds | string[] | none | Required. Google Ads Transparency advertiser IDs like AR07085335169422327809. |
maxAdsPerAdvertiser | integer | 100 | Hard cap on creatives fetched per advertiser, max 10000. |
minimumLongevityDays | integer | 0 | Only output records with adLongevityDays >= minimumLongevityDays. Monitor baselines still track all fetched creatives before filtering. |
includePreviewUrls | boolean | true | Include preview/creative URLs. Media is never downloaded. |
monitorMode | boolean | false | Compare against the previous run's stored creative IDs and flag isNewSinceLastRun. |
webhookUrl | string | none | Optional URL for monitor summary POSTs. Used only when monitorMode is true. |
notifyOnlyOnNew | boolean | true | When true, send webhook summaries only if new creatives are found. When false, send a summary every successful advertiser run. |
debug | boolean | false | Save sanitized JSON payload samples to the key-value store. |
proxyConfiguration | object | Apify Proxy | Standard Apify proxy input. |
Webhook Payload
Webhook payloads include up to the first 20 newly detected creatives to keep alerts small. The full dataset remains available in Apify.
{"event": "google_ads_new_creatives_detected","advertiserId": "AR07085335169422327809","advertiserName": "Apple","previousCount": 120,"currentCount": 123,"newCount": 3,"removedCount": 0,"newCreatives": [{"creativeId": "CR03420806151204241409","adFormat": "video","firstShown": "2026-04-12T15:39:25.000Z","lastShown": "2026-06-12T18:36:54.000Z","previewUrls": ["https://displayads-formats.googleusercontent.com/ads/preview/content.js?..."],"adDetailUrl": "https://adstransparency.google.com/advertiser/AR07085335169422327809/creative/CR03420806151204241409"}],"runStartedAt": "2026-06-13T08:20:00.000Z","runFinishedAt": "2026-06-13T08:20:10.000Z"}
Output
One record per creative, deduplicated by advertiserId + creativeId:
{"advertiserId": "AR07085335169422327809","advertiserName": "Apple","creativeId": "CR03420806151204241409","adId": "CR03420806151204241409","adFormat": "video","firstShown": "2026-04-12T15:39:25.000Z","lastShown": "2026-06-12T18:36:54.000Z","adLongevityDays": 62,"previewUrls": ["https://displayads-formats.googleusercontent.com/ads/preview/content.js?..."],"rawRegionMetadata": 27,"adDetailUrl": "https://adstransparency.google.com/advertiser/AR07085335169422327809/creative/CR03420806151204241409","isNewSinceLastRun": false,"llmMarkdown": "### Apple creative CR03420806151204241409\n\n- Advertiser: Apple\n- Creative ID: CR03420806151204241409\n- Format: video\n- First shown: 2026-04-12T15:39:25.000Z\n- Last shown: 2026-06-12T18:36:54.000Z\n- Ad longevity days: 62\n- Preview URLs: https://displayads-formats.googleusercontent.com/ads/preview/content.js?...\n- Ad detail URL: https://adstransparency.google.com/advertiser/AR07085335169422327809/creative/CR03420806151204241409\n\nNote: headline, body text, landing URL, and domain are unavailable in list-only mode.","headline": null,"bodyText": null,"landingUrl": null,"domain": null,"source": { "pageNumber": 1, "fetchedAt": "2026-06-13T08:20:00.000Z" },"scrapedAt": "2026-06-13T08:20:00.100Z","dataComplete": true,"errorMessage": null}
adLongevityDays is calculated from firstShown and lastShown; it is null if either date is invalid or the date range is invalid.
rawRegionMetadata is the raw region/impression metadata enum from the Transparency Center payload; it is not yet normalized.
If an advertiser has zero visible creatives, the actor finishes cleanly with zero records and logs a summary. HTTP errors or unexpected payload shapes emit a dataComplete: false error record.
Compliance
This actor accesses data visible through Google's Ads Transparency Center web interface. It relies on an undocumented internal endpoint and is intended for low-volume monitoring, research, and workflow automation. Review Google's terms and your own legal/compliance posture before production or commercial use.
- Media is never downloaded; preview/media URLs are stored only as URLs.
- No stealth, no anti-bot bypass, no CAPTCHA solving.