Glossary · Letter A

Add to Cart Event

TL;DR. The AddToCart event is a Meta Pixel standard event that fires when a shopper adds a product to their cart. It carries value, currency, and...

What is Add to Cart Event?

Also known as: AddToCart event, ATC event

What is an Add to Cart event?

The Add to Cart event, written as AddToCart in code, is a Meta Pixel standard event that fires the moment a shopper adds a product to their cart. It tells Meta a user moved from browsing to buying intent. It carries product IDs, value, and currency in the payload.

Per Meta's Standard Events documentation, AddToCart sits between ViewContent and InitiateCheckout in the funnel. It is the first event with hard commercial intent. Most ecommerce optimization plays start here.

The event has three jobs.

  • Train the Meta delivery algorithm on mid-funnel intent.
  • Populate retargeting audiences with shoppers who showed buying signal.
  • Power the AddToCart-to-Purchase ratio, the single best mid-funnel health metric.

One pixel fires it. Every Meta Pixel event follows the same shape.

Where to fire it

Fire AddToCart on the click of the Add to Cart button. Bind to the button click handler, not the cart-page load.

Cart-page-load firing breaks in three places. Single-page apps that update the cart in a drawer never reload. Refreshes on the cart page double-count. Shoppers who add from a quick-view modal never trigger a navigation event.

Click-bound firing also wins on speed. The event sends before the page navigates, so it lands in Meta even if the next page fails to load. Shopify, WooCommerce, and BigCommerce native pixel apps already do this. Custom builds need an explicit click listener.

addToCartButton.addEventListener('click', () => {
  fbq('track', 'AddToCart', {
    content_ids: ['SKU-1234'],
    content_type: 'product',
    value: 49.00,
    currency: 'USD',
    num_items: 1,
  });
});

Standard parameters

AddToCart requires four parameters and accepts one optional one. Every fire should carry the full set.

ParameterRequiredTypeExample
content_idsYesarray of strings['SKU-1234']
content_typeYesstring'product' or 'product_group'
valueYesnumber49.00
currencyYesISO 4217 string'USD'
num_itemsOptionalinteger1

The content_ids value must match the product IDs in your Meta Catalog for dynamic ads to work. Mismatched IDs silently break dynamic product ads and abandoned-cart retargeting.

The value should reflect the unit price of the item added, not the cart total. Per Shopify's customer events documentation, the recommended pattern is to send the line-item price for the SKU just added.

Why ATC matters for retargeting

AddToCart is the highest-quality retargeting signal in ecommerce. A user who added to cart and left has done 80 percent of the buying work. They picked the product. They saw the price. They clicked Add to Cart. They just did not finish.

Per Baymard Institute's cart abandonment research, the average documented cart abandonment rate across 49 studies is 70.19 percent. Seven of every ten shoppers who add to cart never check out.

That is the retargeting opportunity.

A standard abandoned-cart audience setup.

  • Audience definition. Users who fired AddToCart in the last 7, 14, or 30 days, minus users who fired Purchase in the same window.
  • Creative. Dynamic product ads using the content_ids from the abandoned event.
  • Bidding. Lowest cost or cost cap, optimized for Purchase. Never optimize abandoned-cart campaigns for AddToCart again.
  • Frequency. Cap at 3 to 5 impressions per week to avoid burnout.

[ORIGINAL DATA] Across Coinis-managed direct-to-consumer ecommerce accounts in Q1 2026, abandoned-cart retargeting campaigns delivered a median ROAS of 6.8, against a prospecting median of 2.4. The 7-day ATC audience outperformed the 30-day window by 22 percent on ROAS.

ATC-to-Purchase ratio benchmarks

The AddToCart-to-Purchase ratio is the share of AddToCart events that convert to a Purchase inside the attribution window. It is the cleanest mid-funnel health check.

RatioInterpretation
Under 15%Broken checkout, payment friction, or surprise shipping costs
15 to 25%Below benchmark, audit the checkout flow
25 to 40%Healthy range for most ecommerce verticals
40 to 55%Strong checkout, often paired with returning customer mix
Over 55%Suspect tracking. Purchase fires twice or AddToCart misses

[UNIQUE INSIGHT] The ratio also exposes pixel quality. A site with AddToCart firing on every page-load refresh shows an artificially low ratio because the denominator is inflated. A site with Purchase firing on the cart page shows a ratio above 60 percent. Both look like funnel problems but are tracking problems. Audit the pixel before redesigning the checkout.

Per Baymard's checkout usability findings, the top three reasons for cart abandonment are unexpected extra costs, mandatory account creation, and a long checkout process. Each one drops the ATC-to-Purchase ratio independently.

Common implementation mistakes

Most underperforming ATC accounts fail at the implementation layer. The five mistakes that ruin the data.

  1. Firing on cart-page load instead of button click. Single-page-app cart drawers never reload. The event never fires. Optimization starves.
  2. Skipping value and currency. A Purchase without value still records the conversion. An AddToCart without value cannot feed value-based bidding or train Advantage+ on revenue.
  3. Mismatched content_ids between catalog and pixel. The pixel sends '1234'. The catalog stores 'SKU-1234'. Dynamic product ads silently retarget the wrong product, or no product at all.
  4. No deduplication with the Conversions API. Browser fires AddToCart. Server fires AddToCart. Without a shared event_id, Meta counts one action as two. The ATC-to-Purchase ratio drops below 15 percent on paper.
  5. Firing AddToCart on quantity-change clicks. Increasing quantity from 1 to 2 in the cart triggers another AddToCart in some themes. The denominator inflates. Fire only on the initial add.

[PERSONAL EXPERIENCE] In our experience auditing 40-plus Shopify accounts in the last year, four of the five mistakes above showed up in more than half. The single fastest fix is moving the fire from page-load to click-bound. ATC volume drops 10 to 30 percent overnight, and the ATC-to-Purchase ratio climbs into the healthy band within a week.

Real-world example with numbers

A direct-to-consumer skincare brand on Shopify ran for six months with AddToCart firing on cart-page load.

Pixel data showed.

  • 24,800 monthly AddToCart events.
  • 3,200 monthly Purchase events.
  • ATC-to-Purchase ratio of 12.9 percent.
  • Abandoned-cart retargeting ROAS of 1.9.

The team rebuilt the pixel. AddToCart moved to a click-bound listener on the product page button. The Conversions API mirrored every event with a shared event_id. The value parameter was pulled from the line-item price, not the cart total.

Thirty days later.

  • 18,400 monthly AddToCart events. Down 26 percent. The old number was inflated by refreshes.
  • 5,900 monthly Purchase events. Up 84 percent, mostly from recovered attribution.
  • ATC-to-Purchase ratio of 32.1 percent. Inside the healthy band.
  • Abandoned-cart retargeting ROAS of 5.4.

The site did not change. The product did not change. The pixel did.

Related terms

Frequently asked questions

Is AddToCart a standard or custom Meta Pixel event?

AddToCart is a standard event in Meta's Pixel reference. It populates the Conversions column in Ads Manager, feeds Advantage+ Shopping campaigns, and unlocks pre-built optimization goals. Use the standard AddToCart event before reaching for a custom one.

What parameters should an AddToCart event include?

Send content_ids, content_type, value, and currency on every fire. Add num_items when the cart has more than one unit. Skipping value and currency breaks revenue reporting and stops the algorithm from optimizing for value-based outcomes.

Where in the user flow should AddToCart fire?

Fire it on the click of the Add to Cart button, before the page navigates or the cart drawer opens. Firing on the cart-page load misses single-page-app flows and double-counts when shoppers refresh. Bind to the click event and pass the product data straight from the button.

What is a healthy AddToCart-to-Purchase ratio?

Across ecommerce, 25 to 40 percent of AddToCart events convert to a Purchase. Per Baymard Institute, the average documented cart abandonment rate is 70.19 percent across 49 studies. A ratio under 20 percent points to checkout friction. A ratio over 50 percent usually means broken Purchase tracking.

Can AddToCart be used for retargeting if the user never buys?

Yes. AddToCart is the cleanest signal for retargeting. Build a Meta Custom Audience of users who fired AddToCart in the last 7 to 14 days but did not fire Purchase. Show them dynamic product ads with the same content_ids they abandoned. Recovery campaigns built on this audience routinely outperform prospecting on ROAS.

Stop defining. Start launching.

Turn Add to Cart Event into live campaigns.

Coinis AI Marketing Platform builds ad creatives. Launches to Meta. Tracks ROAS. Free to try. No credit card.

  • AI image and video ads from any product link.
  • One-click launch to Meta Ads.
  • Real-time ROAS tracking.