Ad Copy Policy Checker for Meta, Google & TikTok avatar

Ad Copy Policy Checker for Meta, Google & TikTok

Pricing

from $30.00 / 1,000 results

Go to Apify Store
Ad Copy Policy Checker for Meta, Google & TikTok

Ad Copy Policy Checker for Meta, Google & TikTok

Check ad copy against Meta (Facebook & Instagram), Google Ads and TikTok ad policies before you submit. Flags personal attributes, health and weight-loss claims, financial guarantees, crypto, gambling, alcohol, clickbait and caps, with severity per platform, the exact words, a policy link and a fix.

Pricing

from $30.00 / 1,000 results

Rating

0.0

(0)

Developer

Ultimate Foresight Inc

Ultimate Foresight Inc

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 hours ago

Last modified

Share

Ad Copy Policy Checker scans your ad headlines and text against rules built from the public Meta (Facebook & Instagram), Google Ads and TikTok advertising policies, before you submit. For every ad you get the risk level per platform, the exact words that triggered each flag, a link to the policy page it is based on, and a plain-English fix. Paste your ads or send them in bulk through the API. Click Start with the prefilled example to see a result in a few seconds.

A pre-check, not an approval. This is a fixed, rule-based checker. A flag means "review this"; a clean result does not guarantee approval. Platforms also review images, video, landing pages, targeting and account history, and their policies change. Not legal advice.

What does Ad Copy Policy Checker do?

  • ✅ Checks ad copy against 24 content rules (personal attributes, health and weight-loss claims, before/after, financial guarantees, loans, crypto, gambling, alcohol, tobacco, drugs and CBD, weapons, adult and dating, profanity, clickbait, fake endorsements, absolute claims, political content, discriminatory wording, exploiting crises)
  • ✅ Runs Google Ads editorial checks: EXCESSIVE CAPS, "!!", "F R E E", "$ave", 3+ emoji, repetition, phone numbers in ad text
  • ✅ Checks landing URLs: shorteners, non-HTTPS, invalid URLs. Optionally fetches the page to catch 404s and other errors (Google "Destination not working") and scans the page text with the same rules
  • ✅ Gives a severity per platform (Meta, Google Ads, TikTok), the quoted words, the policy URL and a suggested fix for every flag
  • ✅ Works in bulk: paste many ads at once or send a list through the API; export results as JSON, CSV or Excel
  • ✅ Rule-based and repeatable: the same text always gets the same result. An optional extra AI review with your own OpenAI-compatible key is off by default

Who is it for?

  • 📣 Performance marketers and media buyers who want to catch risky wording before an ad is rejected or an account gets flagged
  • 🏢 Agencies checking client copy at scale before launch
  • ✍️ Copywriters and AI ad generators that need an automated policy gate in their pipeline
  • 🛒 E-commerce, health, finance and supplement brands, where rules are strictest

How to check ad copy for policy issues

  1. Click Try for free or Start. The input is prefilled with two example ads.
  2. Replace them with your own ad texts, one per line in Ad texts. For headlines, landing URLs or per-ad platforms, use Ads (advanced).
  3. Pick the platforms to check (Meta, Google Ads, TikTok).
  4. Click Start. Each ad becomes one row in the results table.
  5. Download the results as JSON, CSV or Excel, or fetch them through the API.

Input example

Simple mode (this is the prefilled input):

{
"adTexts": [
"Are you overweight? Lose 30 lbs in 30 days without dieting!!",
"Handmade leather wallets. Free shipping on orders over $50."
]
}

Advanced mode, with headline, platform and landing URL per ad:

{
"ads": [
{
"id": "g1",
"headline": "FREE SHIPPING TODAY",
"text": "Guaranteed returns of 5% daily. Call 555-123-4567",
"platform": "google",
"landingUrl": "http://bit.ly/x"
}
],
"platforms": [
"meta",
"google",
"tiktok"
],
"fetchLandingPage": false
}

Output example

This is real output from the prefilled input above (run on 2026-10-21). Two of the four issues on the first ad are shown in full; the rest are summarized.

[
{
"adId": 1,
"headline": null,
"text": "Are you overweight? Lose 30 lbs in 30 days without dieting!!",
"platformsChecked": [
"meta",
"google",
"tiktok"
],
"riskLevel": "high",
"riskByPlatform": {
"meta": "high",
"google": "medium",
"tiktok": "high"
},
"issueCount": 4,
"issues": [
{
"ruleId": "personal_attributes",
"category": "Personal attributes",
"severity": "high",
"field": "text",
"quote": "Are you overweight",
"context": "Are you overweight? Lose 30 lbs in 30 days without dieting...",
"platforms": [
{
"platform": "meta",
"severity": "high",
"policyUrl": "https://transparency.meta.com/policies/ad-standards/objectionable-content/privacy-violations-personal-attributes/"
},
{
"platform": "google",
"severity": "low",
"policyUrl": "https://support.google.com/adspolicy/answer/143465"
}
],
"suggestion": "Don't assert or imply the viewer has a personal attribute (health, finances, religion, age, race, sexual orientation...). Describe the product instead, e.g. 'A support group for people managing diabetes' rather than 'Are you diabetic?'.",
"source": "rules"
},
{
"ruleId": "weight_loss_claims",
"category": "Weight-loss / muscle-gain claims",
"severity": "high",
"field": "text",
"quote": "Lose 30 lbs",
"context": "Are you overweight? Lose 30 lbs in 30 days without dieting!!",
"platforms": [
{
"platform": "meta",
"severity": "high",
"policyUrl": "https://transparency.meta.com/policies/ad-standards/restricted-goods-services/health-wellness/"
},
{
"platform": "google",
"severity": "medium",
"policyUrl": "https://support.google.com/adspolicy/answer/6020955"
},
{
"platform": "tiktok",
"severity": "high",
"policyUrl": "https://ads.tiktok.com/help/article/tiktok-ads-policy-weight-management"
}
],
"suggestion": "Remove specific or fast weight/muscle results and 'no diet/exercise' promises. Prescription weight-loss drugs (GLP-1) need platform authorization. Target 18+ and frame around a healthy lifestyle.",
"source": "rules"
},
{
"...": "2 more issues (weight_loss_claims: 'without dieting', excessive_punctuation: '!!')"
}
],
"landingUrl": null,
"disclaimer": "Automated pre-check based on public ad policies. Flags are possible issues, not decisions; a clean result does not guarantee approval. Platforms review images, video, landing pages, targeting and account history, which this tool does not fully see."
},
{
"adId": 2,
"headline": null,
"text": "Handmade leather wallets. Free shipping on orders over $50.",
"platformsChecked": [
"meta",
"google",
"tiktok"
],
"riskLevel": "none found",
"riskByPlatform": {
"meta": "none found",
"google": "none found",
"tiktok": "none found"
},
"issueCount": 0,
"issues": [],
"landingUrl": null,
"disclaimer": "Automated pre-check based on public ad policies. Flags are possible issues, not decisions; a clean result does not guarantee approval. Platforms review images, video, landing pages, targeting and account history, which this tool does not fully see."
}
]

Severity: high = commonly prohibited or likely to be rejected. medium = restricted: needs authorization, certification, age or location targeting, or disclaimers. low = style issue or weak signal. riskLevel is the highest severity found; none found means no rule matched.

How much does it cost to check ad copy?

This Actor uses pay-per-event pricing:

  • $0.03 per ad checked (one result row per ad)
  • a tiny Actor start fee of $0.00005 per run
  • plus the small Apify platform usage of the run, paid by you. For the prefilled 2-ad example this was about $0.0001 (256 MB, about 3 seconds).

So 100 ads cost about $3.00 and 1,000 ads about $30, plus a few cents or less of platform usage. You pay only for ads actually checked. Apify lets you set a maximum cost per run so a large batch can never exceed your budget.

Use it through the API, integrations or AI agents

  • API: run it and get results in one call: POST https://api.apify.com/v2/acts/ultimatemc~ad-copy-policy-checker/run-sync-get-dataset-items with your Apify token and the input JSON as the body. Client libraries for JavaScript and Python are on the API tab.
  • AI agents (MCP): add https://mcp.apify.com?tools=ultimatemc/ad-copy-policy-checker to Claude, Cursor, ChatGPT or any MCP client, and your agent can check ad copy as a tool before publishing. See Apify MCP server.
  • Automation: schedule runs, trigger webhooks, or connect Make, Zapier, n8n, Google Sheets and other integrations from Apify Console.

Policy pages behind each rule

Every rule links to the public page it is based on. The rules are our own paraphrased patterns; no policy text is copied. Pages checked on 2026-10-20.

Rule areaPolicy pages
Personal attributesMeta, Google Ads
Negative self-perception / body imageMeta, TikTok
Weight-loss / muscle-gain claimsMeta, Google Ads, TikTok
Before-and-after claimsMeta, TikTok
Health & medical claimsMeta, Google Ads, TikTok
Financial guarantees / get-rich-quickMeta, Google Ads, TikTok
Loans, credit & debt servicesMeta, Google Ads, TikTok
CryptocurrencyMeta, Google Ads, TikTok
Gambling & games of chanceMeta, Google Ads, TikTok
AlcoholMeta, Google Ads, TikTok
Alcohol - irresponsible drinkingMeta, Google Ads, TikTok
Tobacco, vapes & nicotineMeta, Google Ads, TikTok
Drugs, cannabis & unsafe substancesMeta, Google Ads, TikTok
CBD / hempMeta, Google Ads, TikTok
Weapons, ammunition & explosivesMeta, Google Ads, TikTok
Adult / sexual contentMeta, Google Ads, TikTok
Dating servicesMeta, Google Ads, TikTok
ProfanityMeta, Google Ads
Sensational / clickbait languageMeta, Google Ads, TikTok
Celebrity / unauthorized endorsementMeta, Google Ads, TikTok
Unsubstantiated absolute / superlative claimsGoogle Ads, TikTok
Political, election & social-issue contentMeta, Google Ads, TikTok
Discriminatory practices (housing, jobs, credit)Meta, Google Ads
Exploiting crises / controversial eventsMeta, Google Ads
Editorial: caps, punctuation, spacing, symbols, emoji, repetition, phone numberGoogle Ads
Landing page not workingGoogle Ads

FAQ

Will a clean result guarantee my ad is approved?

No. A clean result means none of the rules matched the text. Meta, Google and TikTok also review images, video, landing pages, targeting and account history, and make the final decision.

Does it use AI?

Not by default. The core checker is rule-based (keywords and patterns), so results are repeatable and every flag has a policy link. If you turn on Optional AI review and add your own OpenAI-compatible API key, each ad is also sent to that provider and billed by them; those findings are marked source: "llm" and have no policy link. This option has not been tested by us with a live key.

Which languages are supported?

English only.

Is my ad copy stored?

Ad text is processed during the run and saved only to your own Apify dataset. No personal data is collected.

Can it check images or videos?

No. It reads text and, optionally, the visible text of your landing page.

Limitations

  • Keyword and pattern matching can't fully read context. Words like "shot" or "spirits" may be flagged or missed, and sarcasm isn't understood.
  • It does not see images, video, audio, targeting or account status, which are frequent causes of rejection.
  • Policies vary by country and change often. Always check the linked policy page.
  • Landing-page scan (off by default) makes one plain HTTP request per URL; pages that need a browser or block bots may not be scanned.

Other tools by Ultimate Foresight

Found a false positive or a missed phrase? Open an issue on the Issues tab with the ad text, and we'll review the rule.