Get your Salesforce Commerce Cloud tracking to 95%+ accuracy guaranteed in writing.
SFCC merchants spend $50K-$500K/month on paid media but most run a tracking setup that's stuck somewhere between SiteGenesis cartridges and basic SFRA tags. iOS, multi-site, B2C realm bleed — all of it conspires to under-attribute and inflate cost-per-acquisition. We build an SFRA-aware dataLayer + server-side stack that scales across realms, regions, and ad accounts.
Free30 minutesNo obligation
Salesforce Commerce Cloud · what breaks
Where SFCC tracking breaks at scale — Salesforce Commerce Cloud
- 01
Cartridge sprawl
Multiple tracking cartridges from different vendors fight over the dataLayer.
- 02
Realm bleed
Events from one site fire in another's ad accounts because tag config wasn't realm-scoped.
- 03
Heavy front-end + slow tag firing
SFCC pages + heavy cartridges = bouncers miss tags entirely.
- 04
B2B vs B2C double-bucketing
Most SFCC merchants run both. Tracking does not separate them.
Salesforce Commerce Cloud · the fix
Outcomes — Salesforce Commerce Cloud
SFRA-aware dataLayer
Cartridge that survives core upgrades.
Realm + region routing
Per-realm ad-account dispatch.
Server-side CAPI / EC / TikTok
Dedup-clean, EMQ 8+.
EU residency option
Stape EU or self-hosted GCR europe-west.
Salesforce Commerce Cloud · architecture
How a Salesforce Commerce Cloud order should reach the ad platforms
SFCC is enterprise infrastructure with a release process to match. Tracking here is a cartridge and a controller change, not a snippet, and it moves through the same code review as everything else.
- 1
Click identifiers captured at first touch
Click IDs are captured in the storefront cartridge at landing and persisted to the session, then written to the order as a custom attribute so attribution survives locale and site switches.
- 2
The browser sends the fast, fragile copy
The storefront templates emit browsing and cart events. On SFCC the browser path is the least stable layer, because headless and hybrid deployments change where rendering happens.
- 3
The order itself is the source of truth
The order object after placement, or the Order Management System, is the truth. The confirmation controller is a rendering concern and can be customized away.
- 4
A server container sends the authoritative event
A cartridge hook posts the placed order to a GTM server container on your own subdomain, keyed on the SFCC order number.
- 5
Customer identity raises match quality
The order carries customer profile email, phone and billing address. Hashed in the cartridge, never exposed to the storefront, these produce the match quality enterprise accounts need.
Salesforce Commerce Cloud · events
The event set we build on Salesforce Commerce Cloud, and where each one comes from
In an SFCC build the important decisions are governance decisions: which site, which locale, which currency, and who reviews the cartridge.
| Event | Fires when, on Salesforce Commerce Cloud | Key parameters | Sent from |
|---|---|---|---|
| view_item | The product controller renders, with the master or variant decision made deliberately | item_id, value, currency, event_id | Browser + server, deduped |
| add_to_cart | The cart controller confirms the line item addition | item_id, quantity, value, currency, event_id | Browser + server, deduped |
| begin_checkout | The checkout controller is entered with a non-empty basket | value, currency, num_items, event_id | Browser + server, deduped |
| purchase | The order is placed and reaches a confirmed payment status | order_id, value, currency, items[], hashed email/phone/name/address, event_id | Server authoritative |
| refund | A return or refund is recorded in Order Management | order_id, value, currency | Server only |
Salesforce Commerce Cloud · normal or broken
Enterprise realities on SFCC — Salesforce Commerce Cloud
On SFCC the constraints are organizational as much as technical, and pretending otherwise wastes everyone's time.
Normal, not a fault
Changes taking a release cycle to reach production
Cartridge changes go through code review and a deployment window. This is the platform working as intended.
Different sites and locales reporting separately
Multi-site is a first-class SFCC concept. Separate reporting per site is correct.
Ad platforms report more conversions than you have orders
Meta credits a 7-day click and 1-day view; Google credits on click date. Two platforms can each claim the same sale. Compare each one to your order records separately and never add them together.
Recent days always look worse than they finish
Conversions are credited back to the date of the click, so yesterday's return on ad spend is understated and will keep improving for several days. This is attribution working, not data arriving late.
Actually broken
Tracking implemented only in the storefront templates
Any move toward headless rendering silently strips it, and the loss is discovered a quarter later.
Master and variant product IDs used inconsistently between events and the product feed
Per-product reporting and dynamic remarketing both fail.
Multi-currency orders reported without currency conversion
Value-based bidding is trained on numbers that mean different things depending on locale.
Salesforce Commerce Cloud · prove
How we prove the Salesforce Commerce Cloud build is correct
The tag firing proves the tag fires. These prove the numbers are right.
Source of truth
Order records in Business Manager
- The purchase confirmed firing from the order object, independent of the storefront rendering path.
- Product ID strategy documented and matched against the product feed.
- Currency handling verified across every active locale.
- The cartridge documented well enough to survive a development team handover.
- Purchase count within a few percent of order records in business manager for a fully closed week, matched on order ID rather than on totals.
- No order ID appearing twice in any platform's event log.
- Deduplication confirmed at every destination that supports it.
- Test and staff orders excluded, with the exclusion confirmed active rather than merely configured.
- The same reconciliation repeated 30 days later, because a setup that works once and then drifts is the harder failure to catch.
Salesforce Commerce Cloud · free audit
What we check in the free audit
- Cartridge sprawl
- Realm bleed
- Heavy front-end + slow tag firing
- B2B vs B2C double-bucketing
Checked against
Order records in Business Manager
Free30 minutesNo obligation
Salesforce Commerce Cloud · when not to buy
When a Salesforce Commerce Cloud rebuild is not what you need
We would rather say this now than three weeks into an engagement.
- Your internal team already owns tracking and has capacity. Enterprise engagements work best filling a real gap.
- You are mid-migration to a headless architecture. Build once, after the move.
- The access required will not be granted. Cartridge work needs real repository access.
Salesforce Commerce Cloud · what we deliver
Deliverables — Salesforce Commerce Cloud
SFRA tracking cartridge
Source + license
Server-side GTM (US + EU)
Region-routed
Meta CAPI + Google EC + TikTok + Pinterest
Full coverage
BigQuery + Looker dashboard
Optional add-on
QA + Notion runbook
Plus 60-day support
Written guarantee
95%+ tracking accuracy
Measured against Order records in Business Manager. Miss it and we keep working at no cost.
Pricing
Pick the package that fits your ad spend
Browser-side starter
$400One-time fee · lifetime ownership
Baseline pixel install for Salesforce Commerce Cloud. Honest disclosure: at enterprise scale this tier is a stopgap — every paid-media dollar should be running 1st-party server-side. Only suitable when ad spend is genuinely small.
- Salesforce Commerce Cloud-aware dataLayer
- GA4 + Meta Pixel + Google Ads + TikTok + UET
- Consent Mode v2 wiring
- QA + 14-day support
- No CAPI · no iOS recovery
1st-party server-side
Recommended for paid ads$800One-time fee · most popular
Standard for Salesforce Commerce Cloud stacks running serious paid media. Every channel — Meta, Google, TikTok, Microsoft — fed 1st-party server-side. Multi-store / multi-region aware. EMQ 8+ verified live before handoff.
- Everything in browser starter
- 1st-party server-side GTM (Stape Pro or self-hosted)
- Meta CAPI · Google EC · TikTok Events · UET server
- Deterministic browser ↔ server dedup
- Multi-store / multi-region routing
- Live EMQ verification · 8+ target
- Notion runbook + 30-day support
Enterprise 1st-party stack
$1,800One-time fee · lifetime ownership
Full enterprise stack for high-volume Salesforce Commerce Cloud brands. Every channel 1st-party server-side, identity graph, data warehouse, EU + US residency, and a quarterly attribution review with leadership.
- Everything in 1st-party server-side tier
- Pinterest · Snapchat · LinkedIn · Reddit CAPI
- Klaviyo / CDP identity stitching
- BigQuery export + Looker Studio dashboard
- EU + US data residency (Stape EU / GCR europe-west)
- GDPR / CCPA / CPRA audit-clean
- Quarterly health check + leadership review
- 90-day support · retainer optional
FAQ
Salesforce Commerce Cloud questions, answered
Yes — both B2C and B2B realms covered.
Yes. We have a separate React/PWA Kit module for headless storefronts.
More on Salesforce Commerce Cloud
- GuideBrowser vs Server Tracking: Which Events Belong Where
- GuideWhat an Ecommerce Tracking Rebuild Actually Involves (Start to Finish)
- Free toolFree SFCC audit
- Free toolEMQ predictor
- Squarespace → Marketing CloudConnecting Squarespace Commerce to Salesforce Marketing Cloud
- Drupal Commerce → Marketing CloudConnecting Drupal Commerce to Salesforce Marketing Cloud
- Flow → Marketing CloudConnecting Flow Commerce to Salesforce Marketing Cloud
