About Sunnaher Sopan
Sunnaher Sopan is a Bangladeshi ecommerce brand selling flashlights and rechargeable lights, such as the Hurricane Smart LED Lantern and the METRO LED Table Lamp, with orders priced in BDT and Facebook Ads as a key sales channel.
Project overview
Sunnaher Sopan needed a complete Meta Pixel and Conversions API setup so that purchases from its lighting catalogue reach Meta reliably, together with GA4 Enhanced eCommerce for funnel reporting and Google Ads conversion tracking for search and remarketing campaigns.
I rebuilt the web GTM container around paired browser and server events, moved Meta, GA4 and Google Ads hits through a server-side GTM container on Stape, and added a second, order-level data stream for completed, cancelled and refunded orders. Every step was checked in GTM preview, GA4 DebugView and Meta Events Manager.
Goals
- Send every key funnel event to Meta from both the browser Pixel and the Conversions API
- Deduplicate browser and server events so purchases are counted once
- Pass rich customer data for strong Event Match Quality
- Deploy GA4 Enhanced eCommerce from product view to purchase
- Track Google Ads conversions for add to cart, checkout and purchase
- Capture engagement signals such as WhatsApp clicks, phone clicks and scroll depth
Challenges
- Browser-only Pixel events are lost to ad blockers and tracking prevention
- Customer details are entered at checkout but needed later on the purchase event
- Order status changes such as cancellations and refunds happen after checkout
- Several platforms (Meta, GA4, Google Ads) needed consistent event names and values
- Contact-driven buyers who order by phone or WhatsApp were invisible to ad platforms
Strategy
I used a hybrid setup: the Meta Pixel fires in the browser while matching "FB SS" GA4 event tags send the same interactions to a server-side GTM container on Stape, where a Conversions API tag forwards them to Meta with a shared event ID for Facebook Pixel deduplication. Customer details captured at checkout are stored and reused for advanced matching, and a Data Client receives order webhooks so completed, cancelled and refunded orders can also be reported server-side.
What I implemented
Web GTM container
- Meta Pixel tags for PageView, ViewContent, AddToCart, Initiate Checkout, Add Payment Info and Purchase
- Custom Pixel events for contact-us, phone_click, whats_app_click, image_click and scroll_depth_80%
- Matching "FB SS" GA4 event tags that send each interaction to the server container
- Custom HTML tags that store customer data and email in localStorage for advanced matching
- Google Ads conversion tags for Add To Cart, Begin Checkout and Purchase, plus a user-provided data event and Conversion Linker
Server-side GTM on Stape
- Advanced GA4 server-side tag and Conversions API tag fired from the incoming GA4 stream
- CAPI tag with event enhancement and extended Meta Pixel cookies (fbp/fbc), action source "website"
- Data Client tags for order_completed, order_cancelled and refund sent to Meta and GA4
- Server-side Google Ads conversion tags for add to cart, begin checkout and purchase
GA4 Enhanced eCommerce
- view_item, add_to_cart, begin_checkout, add_payment_info and purchase events
- Engagement events such as scroll_depth_80% alongside the ecommerce funnel
- Verified the full sequence in GA4 DebugView during a test order
Google Ads conversion tracking
- Google Ads conversion tags in the web GTM container alongside the Meta Pixel tags
- Server-side Google Ads conversion tags in the Stape container, so purchases are also sent from the server
- Google Ads tags confirmed firing on purchase in both the web and server GTM previews
QA in Meta Events Manager
- Test purchase checked with value, BDT currency, content IDs, product names, quantity and order ID
- Advanced matching parameters confirmed: city, first and last name, phone, state, IP and user agent
- Server and browser copies of Purchase, Add Payment Info and Initiate Checkout confirmed as deduplicated
- Microsoft Clarity added for session recordings
Tools used
Results
- Purchase Event Match Quality of 9.1/10 in Meta Events Manager
- Purchase event coverage of 100% (pixel events covered by the Conversions API, goal ≥ 75%)
- Purchase event deduplication rated "Meeting best practices", with 31 browser and 31 server events received
- Purchase, Add Payment Info and Initiate Checkout received from server and browser, with the browser copy deduplicated
- Server-side Conversions API tag fired successfully on purchase with a POST 200 response from Meta
- Google Ads conversion tags fired on purchase in both the web and server GTM previews