Analytics
Analytics answers the question the rest of PromoLock exists to fix: how much money are you losing to discounts you didn’t intend? Not your planned promotions — the leaks. It reads your order history, splits the loss into its two causes, and ranks the discounts responsible so you know which rule to tighten first.
What counts as loss — and what never does
Section titled “What counts as loss — and what never does”Every discounted item in an order lands in exactly one of two buckets, so nothing is ever counted twice:
Sale-item loss. The item was already marked down (selling below its compare-at price) and a discount was applied on top. Discounting a discount is the leak — the full discount amount on these items counts as loss.
Stacking loss. The item was regular-priced and carried more than one discount. The single largest discount is treated as the one you intended and is never counted. Only the extra discounts stacked on top of it count as loss.
Read that second rule again, because it’s the important one: your planned promotions are never counted against you. A customer using your 20% campaign code exactly as designed contributes zero loss. The report only moves when a code lands somewhere it shouldn’t.
Cancelled orders are removed from the numbers automatically, and refunds and edits correct themselves.
Setting up
Section titled “Setting up”Open Analytics and hit Initialize report. PromoLock scans up to the last 365 days of orders — a few minutes for most stores, up to a couple of hours for very high-volume ones. You can leave the page; the report fills in on its own.
It’s a one-time setup. From then on the report refreshes automatically every day.
Reading the report
Section titled “Reading the report”Two selects control what you’re looking at:
- Report — Sale-item discounts or Stacked discounts, one per bucket above.
- Time — last 7, 30, 90, 180, or 365 days (default 30).
The tiles
Section titled “The tiles”| Tile | Meaning |
|---|---|
| Lost on sale items / Lost to stacking | Total loss for the selected report and range, in your store’s currency. |
| Affected orders | How many orders contained that kind of loss. |
| Avg / order | Loss per affected order — a quick sense of whether you have a “many small leaks” or “few big leaks” problem. |
Top discounts by loss
Section titled “Top discounts by loss”The ranked list below the tiles (called Most-stacked discounts on the stacking report) names the discounts doing the damage, worst first, five per page. Each row carries a badge:
| Badge | Meaning |
|---|---|
| Code / Automatic | A normal discount — yours to open and fix. The info button shows its details and a direct link to it in your Shopify admin (deleted discounts show as Removed). |
| Campaign | A family of unique one-time codes that share a pattern — shown like REF-* or *10OFF. Referral, loyalty, SMS, and win-back apps mint codes like this; PromoLock groups them so an app’s whole output reads as one line. |
| Single-use | The rollup row — “Other single-use codes (N)” — every one-off code that matches no campaign pattern, folded into one line to keep the list readable. |
The info button on any row explains exactly what’s inside it.
When loss is high
Section titled “When loss is high”If the range’s combined loss is significant, a banner offers a direct chat with the founder to walk through your numbers and map out a setup that cuts the loss — take it up on that, it’s what the chat is for.
From number to fix
Section titled “From number to fix”The report tells you where to act; the other tools do the acting:
- Sale-item loss high → the Controller’s sale-items lock, and check your discounts keep Skip on-sale items on.
- Stacking loss high → the stacking lock, and review each top discount’s Combines with flags.
- One code dominating → open it from the list and add caps, or block it outright.
The Stop discount loss from day one strategy walks this exact loop.
