TL;DR
The extension has no gift card, store credit or reward points setting, so a redemption order reaches GA4 net of the card, while the card's own sale was tracked at full price. Across the two orders that counts the card's money once. Subtotal counts the goods twice and drops discounts, tax and shipping too. Pick the value by the question your reports answer, and settle fully covered orders.
Key Takeaways
- Gift cards, store credit and reward points ship only with Adobe Commerce [2][3][4]; an Open Source store running a module for them needs one test order.
-
Order Success Page Total Calculation [ Subtotal / Grandtotal ]decides the GA4 purchase value [1], and a store that never changed it shows Grandtotal. - On an illustrative $100 card redeemed against $120 of goods plus $10 shipping, GA4 records $130 across both orders under Grandtotal and $220 under Subtotal.
-
Exclude Orders with 0 Valueset to Yes keeps a fully covered order out of GA4, Measurement Protocol purchases included since v1.14.5 (July 22, 2024) [1]. - In GA4 explorations, a transaction whose Item revenue is larger than its Purchase revenue is a candidate for a card, credit or points order [8].
- Each ad pixel section has its own
Order Success Page Total Calculation Default[1], which starts on Uses GA4-level settings.
What Adobe Commerce takes off the grand total
Adobe's documentation carries the same banner on all three features: each is "an exclusive feature that is available only in Adobe Commerce and is not available in Magento Open Source" [2][3][4]. So this guide is about Adobe Commerce. On Open Source, a gift card, credit or points module decides for itself whether its amount lands in the grand total, and the test order near the end tells you.
Adobe words the three almost identically. A gift card amount "appears in the order totals block and is subtracted from the grand total" [2]. Store credit "appears with the order totals, and is subtracted from the grand total" [3]. Reward points are "subtracted from the grand total, similar to a store credit or gift cards", and when a shopper combines them, "the reward points are deducted first" [4]. Adobe's reporting reference writes the field out: base_grand_total is, "in general", subtotal plus tax plus shipping plus discount "- base_gift_cards_amount - base_customer_balance_amount" [5].
Points are the one wobble: Adobe's storefront page says "The available points discount is applied to the subtotal" [6]. We follow the loyalty page, which is explicit about the grand total, and we'd still run the test order on a points store.
The card itself is merchandise: "In the catalog, a gift card is presented as a separate type of product" [2], so selling one is an ordinary order with an ordinary purchase event.
What does the GA4 extension put in the purchase value?
One field in the extension's General Configuration decides it: Order Success Page Total Calculation [ Subtotal / Grandtotal ], which "Calculates total order value on the Success Page based on the Subtotal or Grand total" [1]. Out of the box it reads Grandtotal. The tax and shipping toggles only appear under Grandtotal; our article on GA4 and Magento sales reports that don't match covers them.
The extension has no gift card, store credit or reward points option, and the user guide doesn't mention them [1]. It sends what Magento wrote into the order total, so it never adds a redeemed card back, and it has nothing to subtract because Adobe already did. Items behave differently: each item keeps its own line price, net of any cart rule discount, since cards, credit and points come off the order total rather than off the products.
The same value feeds the browser purchase in the dataLayer and, on PRO, the server-side Measurement Protocol purchase (see our Standard vs PRO comparison for which edition sends what).
How does a gift card change the purchase value GA4 gets on Magento 2?
Run the arithmetic on an illustrative store, with tax left out and shipping kept in the value.
In November a shopper buys a $100 gift card. That's a product order with a grand total of $100, and GA4 gets a $100 purchase under either setting.
In December someone redeems the card on $120 of goods with $10 shipping. Adobe takes the card off the grand total, so $120 plus $10 minus $100 leaves $30.
Under Grandtotal, GA4 records $30 for December, and $130 across the two orders. That $130 is exactly the money that came in: $100 in November and $30 in December. What looks off is December on its own, where a $130 basket shows up as a $30 purchase, so a campaign that brings card holders back looks weak in the month they spend.
Under Subtotal, GA4 records $120 for December, and the two orders add up to $220. The $100 of goods bought with the card is counted when the card sells and again when it's spent. Subtotal also isn't "the grand total without the card". Adobe defines the subtotal as the "Gross merchandise value of all items included in the order" with "Taxes, shipping, discounts, and so on" left out [5], so your cart rule discounts disappear from the value too. Put a 10% cart rule on that December order and the grand total falls to $18 ($120 minus $12, plus $10, minus $100), while Subtotal still reports $120. Our GA4 coupon tracking guide covers how those discounts show up on the purchase.
Google's own definition gives a third number. For value, Google says "Set value to the sum of (price * quantity) for all items in items. Don't include shipping or tax" [7]. With the items priced net of the 10% rule, as the extension sends them, that's $108. Neither setting sends $108.
Reward points follow the same arithmetic with one twist: the shopper earned them instead of buying them, so there's no November purchase. Swap the card for $100 worth of points and GA4 shows $30 under Grandtotal and $120 under Subtotal, and under the default the $100 of goods paid with points never reaches GA4's purchase value at all. Store credit you granted, rather than sold, behaves the same way.
What happens to an order the card pays in full?
Its grand total is 0.
The extension's switch is Exclude Orders with 0 Value [ Yes / No ]: "Set this option to Yes to ensure no purchase event is sent for orders with a value of 0" [1]. Since v1.14.5 (July 22, 2024) it applies to Measurement Protocol purchases as well [1]. Unless someone changed it, it's set to No.
With No, a Grandtotal store sends a purchase at 0 that still carries its items and their prices, and those orders still count as GA4 transactions. With Yes, there's no purchase: conversion rate and average order value ignore those orders, and GA4 transactions fall below Magento's count in exactly the weeks cards get spent. A store that reconciles transactions against Magento every month is better served by No; Yes suits a team that steers by conversion rate and AOV.
The zero-value check looks at the order's grand total, so in DebugView a fully covered order is still skipped with Subtotal selected and the switch on Yes, even though Subtotal would have given it a value.
The switch belongs to GA4. If the Meta pixel's Purchase event is enabled (PRO), the pixel has no zero-value option, so on a Grandtotal basis Meta receives a Purchase worth 0 for that order. The Google Ads conversion has its own Exclude Orders with 0 value [1], which our guide to Google Ads conversion tracking on Magento 2 covers.
Cards sell at Black Friday (November 27 this year) and get spent in December and January. Set the switch before the first one sells.
Where GA4 already shows the gap
A redemption order pulls GA4's two revenue numbers apart. Item revenue is "The total revenue from items only, excluding tax and shipping, subtracted by refunds". Purchase revenue is "The sum of revenue from purchases made on your website or app, minus any refunds given" [8]. Item revenue comes from the item prices; Purchase revenue comes from value, which under Grandtotal has the card taken out.
On an ordinary order with shipping in the value, Purchase revenue is the larger of the two. On the December order above it's the other way around: Item revenue $120, Purchase revenue $30. You've probably scrolled past rows like that in a transactions report without a reason to stop.
To list them:
- In GA4, open Explore and build two Free form tables for a redemption month, both keyed on Transaction ID: one with Purchase revenue, one with Item revenue. Google lists Item revenue as item-scoped and Purchase revenue as event-scoped, and warns that incompatible fields may be grayed out [8], so keep them apart.
- Export both and line them up by Transaction ID.
- Orders where Item revenue is higher than Purchase revenue are your candidates. A balance smaller than the shipping in the value stays hidden this way.
- Open two or three in the Magento admin and look for the gift card, store credit or reward points line in the order totals.
Choose the value, then test one order before Black Friday
Pick the setting by what the number has to answer. If GA4 revenue should mean money that arrived, and your ad return is judged on it, Grandtotal already does that, and the price is redemption months that look thin; read Item revenue next to it in December and January. Subtotal is for a team that wants GA4 revenue to mean goods that moved, and it comes with card sales counted twice and with discounts, tax and shipping gone from the value.
Whichever you pick, annotate the change date in GA4, because the series breaks there. Each ad pixel section (PRO) has its own Order Success Page Total Calculation Default (Uses GA4-level settings / Grandtotal / Subtotal) [1]; a pixel left on Uses GA4-level settings follows the choice above, and our guide to setting up Meta, TikTok and other ad pixels from one admin shows where those sections live.
Then prove it on your own store, with DebugView open as our DebugView verification guide describes:
- Give a test customer a small store credit balance, or issue a low-value test gift card.
- Place an order that uses part of it, and read
valueon thepurchaseevent. - Compare it with the order's Grand Total in the Magento admin. With Grandtotal selected and the tax and shipping Exclude toggles on No, they should match.
- Place a second order the balance covers in full. Under Grandtotal it arrives at 0 with
Exclude Orders with 0 Valueon No, and not at all with it on Yes.
If you send the purchase through the Measurement Protocol (PRO) and, on v1.17.4 or later, have Require Visitor Consent for Server-Side Events switched on [1], a test order placed without granting consent produces no server purchase at all, so accept the banner first; our guide to server-side events and consent has the details.
On Open Source with a gift card or points module, the same four steps decide it: step 3 shows whether the module wrote its amount into the grand total.
FAQ
Does the GA4 extension have a gift card or store credit setting?
No. It sends the order's grand total or its subtotal, whichever you select, and has no option that adds or removes gift card, store credit or reward points amounts [1].
Does the sale of the gift card itself reach GA4?
Yes. On Adobe Commerce a gift card is a product [2], so its sale is an ordinary order with an ordinary purchase at the card's price.
What happens in GA4 when I refund an order to store credit?
That's a credit memo question, and our guide to refund tracking on Magento 2 covers it.
Does any of this apply to Magento Open Source?
Not natively: Adobe documents all three features as Adobe Commerce only [2][3][4]. If a module adds them to your Open Source store, one test order in DebugView shows whether it lowers the grand total.
Set the purchase value your reports need on the Magento 2 Google Analytics 4 extension, then run one gift card order through DebugView before cards start selling on Black Friday.
Sources
- WeltPixel Google Analytics 4 User Guide and Change Log (General Configuration; Meta Pixel Tracking Settings; Google Ads settings; v1.14.5 and v1.17.4 entries), retrieved October 14, 2026, https://docs.weltpixel.com/GA4/User-Guide-WeltPixel-Google-Analytics-4.html
- Gift card purchase and redemption, Adobe Commerce Admin Guide, Adobe Experience League, last updated October 8, 2026, retrieved October 14, 2026, https://experienceleague.adobe.com/en/docs/commerce-admin/stores-sales/point-of-purchase/gift-cards/product-gift-card-workflow
- Store credit, Adobe Commerce Admin Guide, Adobe Experience League, last updated October 8, 2026, retrieved October 14, 2026, https://experienceleague.adobe.com/en/docs/commerce-admin/customers/customer-accounts/store-credit/store-credit
- Reward and loyalty programs, Adobe Commerce Admin Guide, Adobe Experience League, last updated October 8, 2026, retrieved October 14, 2026, https://experienceleague.adobe.com/en/docs/commerce-admin/marketing/merchandising/reward-points/rewards-loyalty
- sales_order table, Adobe Commerce Intelligence documentation, Adobe Experience League, last updated October 8, 2026, retrieved October 14, 2026, https://experienceleague.adobe.com/en/docs/commerce-business-intelligence/mbi/analyze/tables/sales-flat-order-table
- Reward points storefront experience, Adobe Commerce Admin Guide, Adobe Experience League, last updated October 8, 2026, retrieved October 14, 2026, https://experienceleague.adobe.com/en/docs/commerce-admin/marketing/merchandising/reward-points/reward-points-storefront
- Recommended events reference (purchase), Google Analytics developer documentation, last updated September 16, 2026, retrieved October 14, 2026, https://developers.google.com/analytics/devguides/collection/ga4/reference/events?client_type=gtag#purchase
- Analytics dimensions and metrics, Google Analytics Help, retrieved October 14, 2026, https://support.google.com/analytics/answer/9143382