Update time: May 28, 2026
Although Google Analytics 4 introduced a more flexible event-based data model, GA4 Ecommerce tracking still has several known bugs, reporting inconsistencies, and implementation pitfalls.
Below are some of the most common GA4 Ecommerce issues, along with their causes and recommended solutions.
DebugView Displays Incorrect Price Values
When using GA4 DebugView to validate Ecommerce tracking, you may notice that the price parameter appears incorrect.
For example, the actual price sent is 3.15:
The dataLayer.push() implementation is correct.
dataLayer.push({
event: "add_to_cart",
ecommerce: {
items: [
{
item_list_name: "Product details",
item_list_id: "Product details",
item_name: "CASEME 013 Series PU Leather Mobile Phone Shell with Wallet Stand for iPhone " +
"8/7/SE (2020)/SE (2022) 4.7 inch - Black",
item_id: "101115653A",
price: 3.15,
quantity: 1
}
]
},
gtm.uniqueEventId: 596
})
However, DebugView may display the value as 3150000
Picture Source:measure
Automatically multiplied by 100000,
To improve storage efficiency and processing performance, Google Analytics 4 internally converts certain decimal-based values—such as prices and revenue—into scaled integer formats during data processing. Because DebugView exposes these raw internal values, the numbers shown there may differ from the formatted values that ultimately appear in standard GA4 reports.
It not affect the data in the e-commerce report.
“Transaction ID Is Not Set” Error
If your GA4 Ecommerce implementation uses numeric-only transaction IDs, you may encounter errors such as:
This issue was originally identified by Simo Ahava in 2020 and still appears in some GA4 implementations.
Example of problematic transaction IDs:123456789
Recommended approach,use alphanumeric transaction IDs instead: A123456789
This helps GA4 process purchase events more reliably.
Ecommerce Revenue Appears Inaccurate
A common issue in GA4 is seeing small revenue discrepancies caused by currency conversion.
Example:
- Actual order value sent: £35.00
- GA4 Ecommerce Revenue displayed: £34.98
Even though the original value is an exact integer, GA4 reports may display decimal differences.
GA4 internally stores revenue using currency conversion logic.
By default:Revenue is first converted into USD internally,GA4 uses the previous day’s exchange rate,The report interface then converts the value back into your Property currency
Example flow:
£35 → converted to USD → stored internally → converted back to GBP in reports
Because exchange rates fluctuate, the final displayed value may differ slightly from the original transaction amount.
This behavior is expected in GA4 and is not considered a tracking bug.
GA4 Revenue Metrics Explained
GA4 contains multiple revenue-related metrics, and each metric uses different calculation logic.
- Ecommerce Revenue:Calculated from the value parameter in the purchase event, which including Product revenue、taxes、shipping and order discount
- Product Revenue: Calculated using: Product revenue=price*quality
- Total Ad Revenue: Revenue generated from publisher advertising monetization.
- Total revenue: Total Revenue=Ecommerce Revenue+Subscription Revenue+Ad Revenue
GA4 Ecommerce Tracking Errors
Case 1: Purchase Event Exists, But Ecommerce Revenue Is 0
- Insufficient Permissions: Your GA4 role may not include: Revenue Metrics and Cost Metrics, In this situation, revenue data exists but is hidden due to access restrictions. Solution: Ask a GA4 administrator to update your permissions.
- E-commerce parameter error: Ecommerce Revenue is determined by currency and value. If these two parameters are wrong, the data will be 0
- currency:currency is a necessary parameter. If the currency is missing, the value cannot be converted into USD for storage.
- value:The data layer variable is set incorrectly, value should be ecommerce.value, if you directly set it to value, it is an error.
- Wrong GA Version:If the website still uses Universal Analytics (GA3/UA) Ecommerce structure while sending GA4 events, revenue tracking may fail. UA Ecommerce and GA4 Ecommerce use completely different schemas.
Case 2: Purchase Event Exists, But Product Revenue Is 0
- E-commerce parameter error: Product Revenue is determined by price and quality If these two parameters are wrong, the data will be 0
Case 3: view_item Event Exists, But Product Views Are 0
view_item event is recorded successfully, but product-level reporting still shows zero views, the possible reasons are as follows:- All Products Show 0 Views: it may be caused by a data structure error in items, which is an array structure.
- Only Some Products Show 0 Views:it may be that some products are missing tracking
Product Attribution Limitations
Currently, GA4 does not fully support product-level attribution modeling.
As a result: Product attribution reports may appear as (not set)
This is currently a platform limitation rather than an implementation issue.
GA4 Ecommerce Limits:Maximum 200 Products in items
GA4 limits the items array to:
Maximum Items Per Event=200
This means a single Ecommerce event cannot contain more than 200 products.
For some B2B sites, the number may exceed 200.
If it is an ordinary e-commerce event, such as view_item, it can be split, and there are no more than 200 products in each item.
If it is a purchase event, when splitting the order, you need to consider the problem that the order ID cannot be repeated, and you need to add parameters to the order ID. For example, the original order of A767643434 is split into two A767643434-1 and A767643434-2.
Referral:



