Google Analytics Audit Test #

21

(not set) items at checkout

Why It Matters:

Critical to understanding friction & opportunities in the shopping process on a product-by-product level.

Industries:

Ecommerce

Checks For:

Accuracy

How accurate is your recent data?

Insight Category:

Behavior

Can you tell what visitors are doing?

Google Analytics Audit logo

Background

A GA4 audit is essential for uncovering missing insights—key data points that organizations don't yet know and can act upon. A well-done audit evaluates both behavioral tracking and traffic attribution, ensuring each is accurate and useful. It also assesses whether the data collected truly supports business decisions and reporting.

Test Detail

This test checks whether the begin_checkout event includes proper product data, specifically ensuring that the items array has complete fields like item_id and item_name.

When this data is missing, GA4 will log (not set) for product-level dimensions during the checkout step—causing:

  • Gaps in product funnel analysis
  • Inaccurate revenue attribution by item
  • Difficulty optimizing product placement or pricing
  • Inability to diagnose which products initiate checkouts

A checkout without item context is like a receipt with no item line—it’s incomplete and limits business insight.

Check This Test for Free! Instantly.

Our free instant audit tool checks for 90 issues in 90 seconds.

Then gives you a prioritized list of items to tackle.

No cost, no sales call... just free goodness.

Google Analytics audit test results.

How to Conduct This Test

Basic Tests

  • In GA4 > Explore, create a Free-form report:
    • Dimensions: Item name, Item ID
    • Metrics: Event count
    • Filter for event_name = begin_checkout and look for (not set) under item dimensions
  • In Reports > Monetization > Checkout behavior, check for product rows labeled (not set)

Advanced QA

  • In BigQuery, run the below query:
    SELECT ep.key, ep.value.string_value, COUNT(*) AS count
    FROM `your_dataset.events_*`,
         UNNEST(event_params) AS ep
    WHERE event_name = 'begin_checkout'
      AND (ep.key = 'item_id' OR ep.key = 'item_name')
      AND (ep.value.string_value IS NULL OR ep.value.string_value = '(not set)')
    GROUP BY ep.key, ep.value.string_value;
  • If your checkouts frequently include (not set) items, you're missing a crucial part of your ecommerce funnel tracking.

Automated, Free Audit

Want to fix this quickly? Run our Instant Audit

Or hire a pro to help your analytics reflect the real behavior behind each checkout.

How To Fix

Fixing 'begin_checkout' events with (not set) items

  • Use the recommended push to the dataLayer, ensuring the items array is complete:
    gtag('event', 'begin_checkout', {
      currency: 'USD',
      value: 89.99,
      items: [
        {
          item_id: 'SKU_45678',
          item_name: 'Eco-Friendly Water Bottle',
          quantity: 2,
          price: 44.99
        }
      ]
    });
  • In Google Tag Manager:
    • Ensure that the product dataLayer persists through to the checkout page or modal
    • Check that the tag pulling product info is mapped correctly and not firing before data is available

QA Tips

  • Validate using GA4 DebugView to ensure:
    • begin_checkout includes the full items array
    • There are no empty or null fields in item_id, item_name, or quantity
    • Hire a pro to help structure your ecommerce funnel tracking from add to cart through checkout—so your data doesn’t leave you guessing.