Attribution Engine

Know exactly which WhatsApp message drove which order

WappEngage's 4-signal attribution engine gives you campaign-level ROAS — not guesses.

The Problem

Most tools tell you messages were sent. Not which ones made money.

❌ Without Attribution
  • × "We sent 2,400 WhatsApp messages last month"
  • × "Our cart recovery has a 28% open rate"
  • × "I think it's working... revenue went up"
  • × "Leadership wants ROI numbers — I have no idea"
✅ With WappEngage
  • "Cart recovery drove $3.8K last month (36x ROAS)"
  • "Sale broadcast: 23 orders, $1.8K revenue (28x ROAS)"
  • "Total WhatsApp: $8.4K / $295 spend = 28.6x ROAS"
  • "We know exactly which campaigns to scale"
The 4 Signals

A priority waterfall — the first match wins

We check signals in order of confidence. One order gets one attribution source. No double-counting, no inflated ROAS.

01

Unique Discount Code

100% confidence

When a cart recovery or campaign message includes a unique, per-customer discount code and that code is used in an order — it is a definitive match.

Code format: {CAMPAIGN_PREFIX}_{CUSTOMER_ID}_{RANDOM_HASH}. Generated automatically for every message. Looked up on every Shopify order/paid webhook.

💡 The strongest signal — only that specific customer received that specific code. Zero ambiguity.

02

UTM Click

85–95% confidence

Every WhatsApp message link is tagged with UTM parameters. Our pixel tracks the click and stores it against the customer profile.

UTM link format: ?utm_source=whatsapp&utm_medium=journey&utm_campaign=cart_recovery&utm_content=CUS_4923. Lookback: 24 hours.

💡 If the customer clicked a WhatsApp link and then purchased, the attribution is very high confidence.

03

Web Pixel Session

60–80% confidence

WappEngage installs a Shopify Web Pixel that tracks page views, add-to-carts, and checkout starts. If a session originates after a WhatsApp message was sent, we attribute it.

Session tracking uses Shopify Customer Events API. Phone number matched to customer session via Shopify customer_id. Lookback: 24 hours.

💡 The customer received a message and visited the store, but may not have clicked a tracked link. Medium-high confidence.

04

Profile Match

40–60% confidence

If an order is placed by a customer whose phone number is an active WhatsApp subscriber, and no higher-signal match was found, we attribute it as WhatsApp-assisted.

Phone number normalized to E.164 format. Matched against subscriber list. Low confidence — used as last resort.

💡 Weakest signal — the customer is a subscriber but we cannot prove the message directly drove this purchase.

Attribution Models

Five ways to attribute revenue to WhatsApp

ModelHow it worksAvailable on
Last TouchThe last WhatsApp message before purchase gets 100% credit. Default.All plans
First TouchThe first WhatsApp touchpoint in the customer journey gets 100% credit.Pro+
LinearCredit is split equally across all WhatsApp touchpoints in the journey.Pro+
Time DecayMessages closer to the purchase get more credit. Falls off exponentially with time.Pro+
AI (Claude)Claude analyzes the full customer journey and assigns probabilistic credit based on message content, timing, and behavior.Enterprise
Lookback Windows

Why each window is set the way it is

Lookback windows define how long after a message was sent we'll attribute an order to it.

Cart Recovery Journey

24 hours

Cart abandonment intent decays fast. A 24-hour window captures genuine recovery without crediting unrelated purchases.

Broadcast

24 hours

Broadcasts have a short window of relevance. Most conversions happen within hours of sending.

Chatbot

30 minutes

Chatbot interactions are synchronous — the customer is actively engaged. A 30-minute window avoids crediting unrelated purchases.

Opt-In Flow

72 hours

A new subscriber is in a discovery phase. The 72-hour window captures their first purchase after opting in.

Attribution dashboard preview

Every order shows its source, confidence, and revenue contribution.

Attribution Orders — WappEngage Dashboard
OrderCustomerRevenueSourceSignalConfidence
#4923Alex M.$349Cart RecoveryDiscount CodeHIGH
#4891Sarah K.$229Summer BroadcastUTM ClickHIGH
#4867James L.$189Welcome SeriesUTM ClickMED
#4843Maria T.$412Flash SalePixel SessionMED
#4821Chen W.$89ChatbotProfile MatchLOW

Start proving your WhatsApp ROI today.

14-day free trial · No credit card · Cancel anytime

Join Shopify brands worldwide using WappEngage to attribute WhatsApp-driven revenue with confidence.

Available on the Shopify App Store · Managed from your Shopify Admin