Logo Light

How to Build a Coupon Usage Dashboard That Tracks Itself

Aug 20, 2026

Bagikan

Running a promotion is easy. Knowing whether it actually worked is the hard part. Most businesses hand out coupon codes and then have no real way to see how often each one gets used — someone has to manually search through transactions, count matches, and update a tracker sheet by hand. By the time the report is ready, the promotion is already over.

In this tutorial, we'll build a Coupon Usage Dashboard — a system where each coupon shows a live count of exactly how many times it has been redeemed, updating the instant a transaction uses it.

Why this matters

A coupon by itself doesn't tell you anything. What matters is how many transactions actually applied it — and that number needs to stay current as new sales come in, not just at the end of the month when someone finally counts manually.


Step 1: Create the Coupon Table

Start by creating a table called Coupon. Add the fields Code, Discount Percentage (using the Percentage data type), and Active (Checkbox).

Coupon table with Code, Discount Percentage, and Active columnsCoupon table with Code, Discount Percentage, and Active columns

Add a few sample coupons:

  • SUMMER10 — 10% — Active
  • WELCOME20 — 20% — Active
  • FLASH50 — 50% — Active

Coupon table showing three records for SUMMER10, WELCOME20, and FLASH50 with their discount percentagesCoupon table showing three records for SUMMER10, WELCOME20, and FLASH50 with their discount percentages


Step 2: Create the Transaction Table

Create another table called Transaction. Add fields for Customer Name (Text), Total Amount (Currency, USD), and Date.

Transaction table with Customer Name, Total Amount, and Date columnsTransaction table with Customer Name, Total Amount, and Date columns

Add a handful of sample transactions:

  • Emily Rodriguez — $150.00 — 2026-08-15
  • David Kim — $80.00 — 2026-08-17
  • Emily Rodriguez — $60.00 — 2026-08-19
  • Tom Baker — $220.00 — 2026-08-20

Transaction table listing four purchase records for Emily Rodriguez, David Kim, and Tom BakerTransaction table listing four purchase records for Emily Rodriguez, David Kim, and Tom Baker


Step 3: Link Coupons to Transactions

Now let's connect the two tables. Since a single coupon can be used across many transactions, and a single transaction could technically apply more than one coupon, this calls for a Many-to-Many relationship.

On the Transaction table, add a new column, set its data type to Many-to-Many, and link it to the Coupon table.

Adding a Many-to-Many column on the Transaction table linked to the Coupon tableAdding a Many-to-Many column on the Transaction table linked to the Coupon table

Go through your existing transactions and assign coupons to the ones that used one:

  • Emily Rodriguez's $150.00 purchase → SUMMER10
  • David Kim's $80.00 purchase → WELCOME20
  • Emily Rodriguez's $60.00 purchase → SUMMER10
  • Tom Baker's $220.00 purchase → no coupon applied

Transaction table showing coupon codes assigned to Emily Rodriguez's and David Kim's transactionsTransaction table showing coupon codes assigned to Emily Rodriguez's and David Kim's transactions


Step 4: Add a Live Usage Count

Knowing which transactions used a coupon is useful, but what you really want at a glance is a number — how many times has each coupon been used, total?

Go to the Coupon table and add a new column. Set its data type to Custom Logic.

Adding a new Custom Logic column on the Coupon tableAdding a new Custom Logic column on the Coupon table

Describe the rule: count the number of linked Transactions for each coupon.

Describing the logic to count linked transactions for each coupon recordDescribing the logic to count linked transactions for each coupon record

Confirm the clarification screen, then click Save.

Clarification screen confirming the count of linked Transaction records per CouponClarification screen confirming the count of linked Transaction records per Coupon

The wow moment

The Coupon table now shows SUMMER10 with a Times Used count of 2, WELCOME20 with 1, and FLASH50 with 0 — calculated instantly from the actual transaction data, with no manual tallying involved.

Coupon table showing the Times Used column filled in automatically for each couponCoupon table showing the Times Used column filled in automatically for each coupon


Step 5: Watch It Update Live

Let's test it. Instead of adding a new transaction, update the existing one. Open David Kim's $80.00 transaction and add SUMMER10 alongside the coupon it already has, so it now shows both WELCOME20 and SUMMER10 applied.

Editing David Kim's transaction to add SUMMER10 alongside the existing WELCOME20 couponEditing David Kim's transaction to add SUMMER10 alongside the existing WELCOME20 coupon

Head back to the Coupon table. SUMMER10's Times Used count has already updated from 2 to 3 — no refresh, no recalculation step, even though this came from editing an existing transaction rather than adding a new one.

Coupon table showing SUMMER10's Times Used count updated to three after David Kim's transaction was linked to itCoupon table showing SUMMER10's Times Used count updated to three after David Kim's transaction was linked to it

What this replaces

This replaces manually filtering transactions by coupon code, counting matches by hand, and updating a separate tracker — a process that's easy to get wrong the moment a transaction changes, since one transaction can now apply more than one coupon at once.


Step 6: Build a View for Underperforming Coupons

Now that usage is tracked automatically, create a new view on the Coupon table filtered to show only coupons where Times Used equals 0.

Creating a filtered view on the Coupon table where Times Used equals zero

Save the view as "Unused Coupons."

Saved view named Unused Coupons showing coupons that have not been redeemed yet

This gives you an instant list of promotions that aren't gaining traction — useful for deciding what to retire or promote harder.


Recap

What you had beforeWhat you have now
Manually searching transactions for each coupon codeA live count updating automatically per coupon
No easy way to spot underused promotionsA saved view surfacing coupons with zero usage
Reports only accurate as of the last manual countNumbers accurate the moment a transaction is added

What you built:

  1. A Coupon table and a Transaction table
  2. A Many-to-Many link connecting coupons to the transactions that used them
  3. A Custom Logic field counting live usage per coupon
  4. A filtered view highlighting coupons that haven't been used

This same pattern — linking many-to-many and counting live usage — applies beyond coupons too. Think referral codes, event tickets shared across attendees, or tags applied across multiple records.

Try it yourself

This Coupon Usage Dashboard is available as a ready-made template. Duplicate it, plug in your own promotions and transactions, and watch the usage counts track themselves from day one.

Coba Langsung

Halaman ini

Artikel terkait

Jelajahi lebih banyak artikel produk dan praktik terbaik untuk tim yang membangun dengan Ambisius.

Masih Pakai Spreadsheet?
Wajib Coba Ini.

Ubah spreadsheet yang biasa digunakan menjadi sistem terstruktur yang dibangun untuk bisnis Anda

Coba Ambisius Gratis

Tanpa komitmen. Tanpa kartu kredit.

Logo Light

© 2026 Ambisius. Seluruh hak cipta dilindungi.