Use case · Ecommerce

Ecommerce analytics: which campaigns sell, and where carts are lost

The best analytics for ecommerce answers two questions every day: which channels and campaigns produce orders (not just sessions), and at which step between product page and payment shoppers give up. That takes revenue attribution, a checkout funnel and a way to watch what went wrong — on one dashboard.

Updated

Online stores live on thin margins and paid traffic, so a report that says "Instagram sent 4,000 sessions" is not enough. You need revenue per campaign to set ad budgets, a funnel to find the leaky step, and evidence — a heatmap, a replay, a JavaScript error — to fix it.

VisitTrack covers that for stores whose checkout runs on Stripe Checkout or Payment Links, Paddle, Lemon Squeezy, Polar or Razorpay: payments arrive by signed webhook and are attributed to the visitor's first touch. If your checkout is hosted by a store platform such as Shopify, see analytics for Shopify stores for what changes.

The ecommerce metrics that matter

  1. 1.Revenue and revenue per visitor by channel and campaign

    The number that sets ad budgets. Google, Meta, Microsoft, TikTok and LinkedIn click ids are recognized and labeled as paid even when a UTM is missing. Compare with your ad spend using the ROAS calculator.

  2. 2.Product-to-purchase funnel conversion

    Each step's conversion between product page, cart, checkout start and payment. Industry averages hide your specific leak — the funnel shows it.

  3. 3.Conversion rate by device

    Mobile usually brings most of the traffic and converts worse. If the gap is wider than about 2x, the mobile checkout is the problem, not the traffic.

  4. 4.Landing pages that start buying journeys

    Which collection pages, blog posts or gift guides precede the most revenue. Good for deciding what to promote and what to rewrite.

  5. 5.Friction signals: rage clicks, JS errors, 404s, Web Vitals

    Recorded without code. A spike in rage_click on the size selector or js_error on the cart page is lost revenue you can fix this week. Slow LCP on product pages costs conversions too.

  6. 6.Days to purchase

    How long between first visit and order. Short cycles favor last-click spending; long ones mean content and email do more work than the ad report suggests.

Questions store owners ask their analytics

Which ad campaign actually made money last week?
Revenue by campaign on the Revenue tab, with first-touch and last-touch side by side so you see which campaigns find buyers and which close them.
Where do shoppers abandon?
The checkout funnel shows step-by-step drop-off; open replays of visitors who dropped at the worst step to see what they hit.
Is the mobile checkout broken?
Filter the dashboard to mobile devices and compare conversions with desktop, then check the Clicks heatmap and the automatic js_error event on the cart page.
Do our blog posts sell anything?
Filter revenue by landing page: posts that start buying journeys show attributed revenue next to them.
How much revenue did refunds take back?
Subscribe to your provider's refund event and refunds, including partial ones, are subtracted from the original payment automatically.

How to set up ecommerce analytics with VisitTrack

  1. Install the tag on the storefront

    In the storefront's layout, before </head>. Product, cart and checkout pages should all carry it.

    <script defer data-site="SITE_ID" src="https://visitrack.app/tracker.js"></script>
  2. Track the cart and checkout steps

    Send an event when an item is added to the cart and when checkout starts. Props such as product or value are fine (up to 10 per event).

    window.visitrack?.("add_to_cart", { product: "linen-shirt", price: 59 });
    window.visitrack?.("checkout_started", { items: 2 });
  3. Connect payments

    Pass the visitor id into checkout — client_reference_id for Stripe Checkout and Payment Links, custom data for Paddle, Lemon Squeezy, Polar and Razorpay — and connect the webhook in Settings → Revenue. See revenue attribution. Stripe PaymentIntents confirmed outside Checkout aren't attributed automatically; send those orders as server events.

  4. Build the funnel

    Funnels → new funnel with the steps add_to_cart → checkout_started → payment_completed and a 7-day window. Page steps match an exact path (for example /cart), so for many product pages an event such as product_viewed works better as the first step. payment_completed is written automatically for every attributed payment.

  5. Turn on replays and heatmaps for the checkout

    Session replays are off by default: switch them on in Settings → Replays and pick a sample rate (20% is the default). Form fields are always masked, so card and address fields are never recorded. See session replays.

Example: a direct-to-consumer store's month

An apparel brand on a custom storefront with Stripe Checkout, about 30,000 monthly visitors.

Example: a direct-to-consumer store's month
MetricValueWhat it tells you
Visitors30,40063% mobile
Orders5121.7% conversion; $38,900 attributed revenue
Meta ads (paid social)9,800 visitors, $6,100$0.62 per visitor
Google organic7,200 visitors, $11,400$1.58 per visitor — 2.5x paid social
Cart → checkout step41% drop-off on mobile, 22% on desktopReplays show a shipping-cost surprise at checkout
rage_click events1,140Most on a size chart link that opens nothing on iOS

Illustrative numbers for a typical site of this kind, not real customer data.

Two fixes fall straight out of the table: show shipping costs on the product page, and repair the size chart on iOS. Budget-wise, organic search and email earn far more per visitor than paid social, which argues for content over a bigger Meta budget — something the ad platform's own reporting will never tell you.

VisitTrack vs GA4 and Shopify-style built-in analytics for ecommerce

Third-party details as of October 2026.

VisitTrack vs GA4 and Shopify-style built-in analytics for ecommerce
VisitTrackGoogle Analytics 4Store platform analytics
Revenue sourcePayment provider webhooks (Stripe, Paddle, Lemon Squeezy, Polar, Razorpay)Ecommerce events you send (purchase, add_to_cart…)The platform's own orders — authoritative
Attribution modelsFive, compared side by sideData-driven, last clickUsually last-click or first/last visit
Consent banner in the EUNot needed in cookieless modeTypically requiredDepends on platform and apps
Replays / heatmapsBuilt in (replays opt-in)Not includedUsually via third-party apps
Ad platform integrationNo ad spend importDeep Google Ads integrationVaries

If Google Ads is your main channel and you bid on GA4 conversions, keep GA4 for that job. VisitTrack is the better fit when you want privacy-friendly, readable revenue-by-channel reporting plus friction signals without a tag manager. See VisitTrack vs Google Analytics and vs Hotjar.

What VisitTrack costs for an online store

Stores average 4–6 pageviews per visit, plus cart and checkout events and payments.

VisitTrack pricing by traffic profile
ProfileEvents / monthPlanPriceNotes
New store~20,000Up to 25k events/mo$9/mo or $90/yr~4k visitors
Established DTC brand~190,000Up to 250k events/mo$29/mo or $290/yr~30k visitors
Large catalog~2,100,000Up to 2.5M events/mo$89/mo or $890/yr~350k visitors

Every feature is on every plan; the price only follows monthly events (pageviews, custom events and payments, counted across all your sites). Bot and AI-crawler hits and session replays are never billed. Yearly billing is ten months' price for twelve, every plan starts with a 14-day free trial with no card, and there's a one-time lifetime deal from $59.

Frequently asked questions

What is the best analytics for an ecommerce site?

One that attributes real orders to channels and shows where shoppers drop off. VisitTrack does both for stores using Stripe, Paddle, Lemon Squeezy, Polar or Razorpay; Shopify stores should combine Shopify's own order reports with a traffic tool.

Can VisitTrack track add-to-cart and checkout steps?

Yes, as custom events — one line of JavaScript each, or a data-vt-goal attribute on the button. Combine them with the automatic payment_completed event in a funnel.

Does it work with WooCommerce?

Traffic, funnels and events work on any WordPress store (WordPress guide). Automatic revenue attribution needs payments that go through Stripe Checkout or one of the other supported providers; orders paid another way can be sent from the server as custom events.

Will session replays record credit card numbers?

No. Every input, textarea and select is masked in the browser before anything is sent, and you can mask or block any other element with data-vt-mask or data-vt-block.

How do I measure return on ad spend?

Use attributed revenue per campaign from the Revenue tab and divide by the campaign's spend from your ad platform. The ROAS calculator does the math.

Does analytics need a cookie banner on an EU store?

Not in VisitTrack's cookieless mode, which stores nothing on the device. Standard mode uses a first-party cookie and generally needs consent in the EU. This is general information, not legal advice.

Related

See which channels actually bring paying customers

VisitTrack is cookie-free analytics with revenue attribution built in. One script tag, no consent banner, live in two minutes. 14 days free, no card required.