Skip to content
Headline feature

Approval Blockers

Every Google Merchant Center approval blocker your store has, ranked from must-fix to silent-killer, with copy-paste fixes tailored to your platform and your audience.

Why an Approval Blockers surface exists

Google Merchant Center suspension notices are intentionally vague. The email says "misrepresentation" or "insufficient information" without telling you which specific item on your store triggered it. Merchants spend days guessing.

The Approval Blockers surface replaces the guessing. Every audit run identifies which specific items are failing, ranks them by severity and detection confidence, and gives you the exact fix path per item.

Top of the list is what unblocks approval. Below the line is what improves trust score over time. The ranking reflects severity and detection confidence, not a generic checklist.

The 3 tiers, explained

Every blocker maps to one of three tiers. Tier 1 is what reviewers find first.

1

Tier 1 — Must fix to unblock approval

The items Google reviewers find within minutes: business name inconsistencies, missing physical address, template-only policy pages, hidden auto-subscription patterns.

Visual weight: full-width cards, expanded by default, red ring on failures.

2

Tier 2 — High risk

Items that contribute to suspensions when combined with tier 1 issues: schema conflicts, JS-only price rendering, feed-page price mismatches, GTIN gaps on branded products. Often the underlying reason a Tier 1 fix alone does not lift the suspension.

Visual weight: 2-column dense grid below Tier 1.

3

Tier 3 — Silent killers

Items that rarely cause an immediate suspension but lower trust score over time: missing Wikidata entity, no third-party reviews, slow Core Web Vitals on mobile, missing Speakable schema. Address these to prevent future flags.

Visual weight: lower-prominence cards, collapsed by default.

What each blocker card contains

Every card is built to make reviewer-side verification fast and merchant-side fix execution faster.

What we found

The specific failing audit_check rows for your store, with the URLs where each was detected. Click any URL to open it in a new tab and verify yourself.

Audience toggle

Plain English (step-by-step for non-technical merchants) vs Developer (concrete commits, code snippets, file paths). Same blocker, different reading audience.

Platform select

Shopify / WooCommerce / BigCommerce / Magento / Wix / Custom. Fix instructions adapt to your platform's specific admin paths and theme conventions.

Copy-paste snippets

Real code blocks for JSON-LD schema, Liquid templates, WooCommerce custom fields. Copy button on the right, paste straight into your store.

Mark as fixed + Re-scan

Mark each blocker fixed after applying the change. Re-scan triggers a fresh audit so you see the new state without waiting for the next scheduled run.

Google's policy doc

Every blocker links to the relevant Google Merchant Center policy section. The link opens the source you can cite in your appeal text.

How the ranking is built

Every blocker in the registry maps to one or more underlying audit checks. When you run an audit, the system runs its full check set against your store, and each failing check propagates to the registry as a failed blocker.

The ranking within each tier is weighted by:

  • ·Severity: how directly the item causes a suspension when failing (account-level vs item-level)
  • ·Recency: how often Google's algorithm changes have made this item more or less impactful (refreshed quarterly)
  • ·Detection confidence: items with high-confidence detection (DOM inspection, schema validation) rank above those with heuristic detection

The blocker registry lives in code at lib/audit/approval-blockers.ts. Open-source pattern: every change to the registry ships in a public commit.

Sample card: business name inconsistency

An example Tier 1 blocker, showing how it appears in the dashboard for a Shopify merchant.

Tier 1 · Must fix3 signals · 5 pages affected

Your business name doesn't match across the web

When Google sees one name on your site and another in your Merchant Center account or Google Business Profile, it triggers the Misrepresentation policy.

What we found

Footer text: "Northline Apparel"

GMC business info: "Northlineapparel"

Google Business Profile: "Northline Apparel Pty Ltd"

How to fix it — Shopify · plain English

  1. Open Shopify admin → Settings → General → Store name. Set to "Northline Apparel Pty Ltd".
  2. Theme → Customize → Footer → update brand text block to the same.
  3. Open business.google.com → Business name → update.
  4. Re-scan to verify all three now match.

See your store's Approval Blockers

90 seconds. Checks across all 5 tiers of compliance signals. Returns your ranked blocker list with copy-paste fixes per platform. No credit card.

Run a free audit