See which Adobe Commerce discounts are worth keeping

A single board that shows every cart price rule next to the discount it gave away, the revenue it brought in, and how it moved average order value.

App
Adobe Commerce (Magento)Google SheetsMarketingOperationsAI ReportsData Sync
PromptCreate

Build me a promotions control room for our Adobe Commerce store, where our merchandiser reviews which discounts are actually worth keeping. Use the language of the Magento admin throughout: these are cart price rules, the kind managed under Marketing > Cart Price Rules, and the codes attached to them are coupons.

The main view is a table with one row per cart price rule. Load the rules with Search Sales Rules and pull the full detail for each with Get Sales Rule, so the row can show the rule name, whether it is currently active, its from and to dates, the discount type and amount, and its uses-per-coupon limit. Put a review window selector at the top of the page, defaulting to the last 90 days, because every performance number below is scoped to that window.

For each rule, resolve its codes with Search Coupons filtered by the rule id. Then attribute orders to the rule: Magento orders carry a coupon_code field, so call List Orders filtered on orders whose coupon code is any of the codes belonging to that rule, restricted to the review window. From those orders compute and show, as columns: redemptions (the number of attributed orders), total discount given away (the summed discount amount), revenue attributed to the rule (the summed order total), and the average order value of those discounted orders.

The judgement column is the comparison. Separately call List Orders for the same window filtered to orders with no coupon code, and compute the average order value of those undiscounted orders. Show each rule's AOV against that baseline as both an absolute difference and a percentage lift, and show revenue returned per dollar discounted. Sort and highlight on those comparison columns rather than on raw redemption count, since a heavily redeemed rule that dropped basket size is exactly the thing the merchandiser needs to spot. Visually flag rules that fall below a configurable performance bar.

Clicking a rule opens a detail view with its metrics, the list of its codes and how many times each was redeemed, and the attributed orders. In that detail view, use List Order Items on the attributed orders to show which products were actually bought on discounted orders, so the merchandiser can see the attach rate of the products the promotion was meant to push.

From the same screen the merchandiser can act. Extend or pause an underperforming rule with Update Sales Rule, changing the end date or flipping it inactive. Launch a new campaign with Create Sales Rule and then bulk-generate its codes with Generate Coupons. Retire dead codes with Delete Coupons by Codes. Guard the destructive paths: pausing a rule that is currently live and deleting coupon codes must both show a confirmation dialog first, spelling out exactly which rule or which codes are affected and how many redemptions are already attached to them.

Every decision gets appended to a Google Sheet promo log using Append Values, so the team keeps a running history of what was launched, what was killed, and why. Each row should carry the timestamp, who took the action, the rule name and id, the action taken, a snapshot of the metrics at the moment of the decision, and a free-text reason. Ask for that reason in the same dialog that confirms the action and require it before the action fires. Let the spreadsheet and tab be set once in a settings area and reused for every write.

The reason this board is worth opening is that the built-in coupon report shows redemptions and discount totals but never sets the discount cost against attributed revenue and AOV lift. That trade-off is the whole judgement call, so make those comparison numbers the most prominent thing on the screen.

What does this prompt do?

  • Lists every cart price rule and its codes in one table, with redemptions, total discount given away, and the revenue attributed to each rule
  • Compares average order value on discounted orders against undiscounted orders in the same window, so you can see whether a promo actually lifted baskets or just gave margin away
  • Lets you extend, pause, or launch a promotion and bulk-generate its codes without leaving the screen, with a confirmation step before anything destructive
  • Appends every decision, along with your reason, to a shared Google Sheet promo log so the team keeps a running history of what launched and what got killed

What do I need to use this?

  • An Adobe Commerce (Magento) store, with admin access covering your promotions and orders
  • A Google account and a spreadsheet you want to use as the promo log
  • A rough idea of the review window you judge promotions on, for example the last 90 days

How can I customize it?

  • Change the review window (last 30, 90, or 180 days) and which store views are included in the comparison
  • Set your own bar for what counts as underperforming, such as a minimum revenue returned per dollar discounted
  • Add columns to the promo log sheet, like the campaign owner or the margin impact you expected going in

FAQs

How does the board know which orders belong to a promotion?
Every order records the coupon code the shopper used at checkout. The board looks up all the codes attached to a cart price rule, then pulls the orders that redeemed any of them. A campaign with fifty generated codes still rolls up into one row, so you judge the promotion rather than individual codes.
How is this different from the coupon report already built into Magento?
The report under Reports > Sales > Coupons tells you how many times a code was used and how much discount it handed out, and then stops. This board sets that discount cost against the revenue those orders produced and against what a normal undiscounted order looks like in the same period. That comparison is the keep-or-kill call you are actually trying to make.
Can I accidentally kill a live promotion?
No. Pausing a rule that is currently running and deleting coupon codes both ask you to confirm first, and show you what is about to be affected. Every action is also written to the promo log with your name and your reason attached.
Do I need to install an extension or a separate analytics tool?
No. The board reads directly from your store, so there is nothing to install in Magento and no paid reporting extension involved.
Does this work with auto-generated coupon codes?
Yes. Bulk-generated codes are grouped under the rule that created them, so you see the campaign's overall performance instead of scrolling through hundreds of individual code rows. You can still open a rule to see how each code performed.

Related templates

Prospecting desk that builds account lists from the live web

Stop buying stale lists. Reps run a saved search, work the results like an inbox, and only the accounts they approve ever reach your CRM.

Hyperbrowser
HubSpot
Google Sheets
App
Influencer campaign roster board with AI creator briefs

Drag creators through Sourced to Wrapped on a board grouped by campaign, with audience stats on every card and a one-click brief for each creator.

HypeAuditor
Google Sheets
Notion
App
Morning repricing console for Shopify with margin-safe rules

Pick a repricing rule, send an assistant out to check competitor pages, then approve the new prices that clear your margin floor.

Hyperbrowser
Shopify
Google Sheets
App
Pre-flight bounce check before you launch a cold email sequence

See the projected bounce rate for any outbound send before it goes out, and keep the launch button locked until the list is clean enough to be safe.

Hunter
Google Sheets
App
Per-device electricity cost explorer for your smart home

Pick any date range and see what each device in your home actually cost to run, not just how many kilowatt-hours it used.

Home Assistant
Google Sheets
App
Build a PR media list from real worldwide news coverage

Search three months of global coverage on your topic, rank the outlets actually writing about it, and draft a tailored pitch for each one.

GDELT
Google Sheets
Gmail
App

Stop guessing which discounts are paying for themselves.

Open one board that puts every promotion's discount cost next to the revenue and basket size it actually produced, then act on it in the same screen.