A discount stops applying. Free shipping starts charging. Products vanish from Google overnight. No error, no warning — just orders going out wrong until a customer happens to mention it.
ShopCanary watches for exactly that, and tells you with the evidence.
These are real merchant reports from 2026. In every case the store looked completely fine from the admin.
After Scripts shut down, discount and shipping logic began failing without throwing anything. Orders complete at full price, and the shopper rarely bothers to complain.
The opposite failure, and worse: the promotion works, so nothing looks wrong. It just quietly gives away margin on every order until someone reconciles the numbers.
A feed change disapproves the catalogue while you sleep. Google's own email often arrives well after the traffic has already gone.
Duplicate offers burn feed quota and can trigger account-level warnings. A feed that silently empties takes every listing down with it.
When identifiers change, Google treats an established catalogue as brand new. Performance history and review counts reset, and nothing in Shopify looks any different.
The worst failure for a watchdog is looking healthy while blind. A green dashboard that hasn't actually checked anything is worse than no dashboard.
“Orders over $100 ship free.” “SAVE20 takes 20% off.” Plain rules, in your words. ShopCanary can't guess your intent, so you tell it once.
Each order is compared against your rules as it comes in — plus an hourly re-check, because webhooks aren't guaranteed and a missed order would be a false all-clear.
Link your own Merchant Center account and ShopCanary watches disapprovals, offer counts and product IDs alongside your orders.
An alert needs a repeated failure, not one odd order. Every alert carries the order, the rule, and expected versus actual.
Order #1042 qualified for “Orders over $100 ship free” (subtotal USD 150.00) but shipping was charged.
Seen on 12 orders so far. This started about 2h after “Free shipping over 100” was edited.
The free plan never hides a problem from you. The difference is how quickly you hear about it.
No. It reads orders, discounts and products, and it reads your Google Merchant Center account. It has no write access to your store at all — it detects, evidences and alerts, then links you to the place you'd fix it.
None. Order webhooks arrive with customer details attached, and ShopCanary strips them at ingestion — it keeps line items, discounts, shipping lines, totals and timestamps, which is everything needed to tell whether a rule fired. No customer name, email, phone or address is ever written to our database.
You connect your own Google account, and ShopCanary reads your own Merchant Center data with read-only access. It doesn't touch the Google & YouTube channel app or anything inside it. You can disconnect at any time, which deletes the stored token.
It's designed not to. A single odd order won't trigger anything — a rule has to fail repeatedly first. Repeats of the same problem collapse into one alert with a count rather than one email per order, and there's a cooldown before the same issue can alert again.
It tells you. Every check records that it ran, and if one goes stale the dashboard says so and the weekly summary flags that the period may be incomplete. A monitor that fails silently is worse than none, so it never renders green when it hasn't actually checked.
Because an order with no discount is ambiguous — it might be a broken promotion, or a shopper who simply didn't qualify. Telling ShopCanary what should always hold is what makes a confident alert possible instead of a guess.