Back to Docs

Sales Funnel

Visualize your customer journey from product view to purchase

The sales funnel shows how many unique visitors progress through each step of the buying process: viewing a product, adding it to cart, and completing a purchase. This helps you identify where customers drop off and optimize your conversion flow.

Funnel Steps

Product Views
Unique visitors who viewed at least one product page. Tracked via the trackProductView event or automatically by the WooCommerce plugin.
Add to Cart
Unique visitors who added at least one item to their cart. Tracked via the trackAddToCart event or automatically by the WooCommerce plugin (requires AJAX add-to-cart).
Purchases
Unique visitors who completed at least one purchase. Tracked via the trackPurchase event or automatically on the WooCommerce thank-you page.

How It Works

  1. Each step counts unique visitors (deduplicated by visitor hash), not total events.
  2. The funnel uses COUNT(DISTINCT) in the database for accurate, scalable counting.
  3. Percentages are relative to the first step (Product Views = 100%).
  4. Step-to-step drop-off rates show where the biggest losses occur.

Reading the Funnel

Conversion Rate
The percentage shown on each step is relative to Product Views. For example, if 100 visitors viewed products and 5 purchased, the purchase rate is 5%.
Drop-off Rate
The percentage lost between consecutive steps. A large drop from "Add to Cart" to "Purchases" may indicate checkout friction (shipping costs, payment issues, etc.).
Step-to-step Rate
Shown between each pair of steps. For example, "60% proceed to Add to Cart" means 60% of viewers add something to their cart.

Tips for Improvement

Low Product Views?
Check your traffic sources and make sure product pages are easy to find from your homepage and category pages.
Low Add to Cart Rate?
Review your product pages: pricing clarity, product images, reviews, and a prominent add-to-cart button all help.
Low Purchase Rate?
Simplify your checkout process, offer guest checkout, reduce shipping surprises, and add trust signals (SSL, payment icons).

Important Notes

The visitor hash changes once a week (it combines IP, user agent and the current week, which starts on Thursday at 00:00 UTC). A visitor who views a product and buys a few days later, within the same week, counts as one visitor; one who comes back after the change counts as a new one. This is by design, for privacy, and it means the funnel undercounts purchases that span the weekly change.
If you see more purchases than product views, it usually means product view tracking was enabled after purchase tracking (e.g., after a plugin update). This is not a bug — it reflects the actual tracked data.
The "Add to Cart" step requires JavaScript AJAX events. If your theme uses direct page redirects instead of AJAX add-to-cart, this step may show 0 even with real cart additions.

Setting Up Tracking

For the funnel to work correctly, all three event types need to be tracked:

Product Views

window.simpleAnalytics.trackProductView({
  productId: 'prod-456',
  productName: 'Product Name',
  price: 99.99
});

Add to Cart

window.simpleAnalytics.trackAddToCart({
  productId: 'prod-456',
  productName: 'Product Name',
  price: 99.99,
  quantity: 1
});

Purchase

window.simpleAnalytics.trackPurchase({
  orderId: 'ORDER-123',
  revenue: 99.99,
  currency: 'USD',
  products: [
    { id: 'prod-456', name: 'Product Name', price: 99.99, quantity: 1 }
  ]
});

If you use the WordPress/WooCommerce plugin, all three events are tracked automatically.

Next Steps