Pixels & tracking
Pixels are tiny scripts that fire events when customers interact with your store. They power retargeting ads, conversion tracking, and attribution — install them before running paid traffic.
What we support
| Tracker | Coverage |
|---|---|
| Facebook Pixel (Meta) | Browser-side events + Conversions API (server-side) |
| TikTok Pixel | Browser-side events |
| Snapchat Pixel | Browser-side events |
| Google Analytics 4 | Direct or via GTM |
| Google Ads | Direct or via GTM |
| Custom HTML | Free-form <head> injection (e.g. Hotjar, Clarity, etc.) |
Each pixel can be configured per store (single instance) or in multi-pixel mode (several instances of the same pixel) — useful when running ads from multiple ad accounts or testing creatives. Multi-pixel lives at /dashboard/pixels/multi.
Plan limits
Pixel availability scales with your subscription plan:
| Plan | Pixels per type | Notes |
|---|---|---|
| Free | 0 | Pixel management is locked. Upgrade to track ads. |
| Pro | 1 per type (Facebook, TikTok, Snapchat, GA4, Google Ads, custom) | Single Pixel per channel — fits most stores. |
| Unlimited | unlimited per type | Add as many Facebook / TikTok / etc. instances as you need at /dashboard/pixels/multi. |
| Enterprise | unlimited per type | Same as Unlimited. |
When a paid plan expires and your store reverts to Free, Pixel events stop firing — your configuration is preserved and resumes the moment you re-subscribe. Renewal: open /dashboard/subscribe and click the ▶ How to renew button for the in-app guided tour, or watch the DZBuild YouTube channel.
Standard events fired
Across all pixels, the storefront fires the same canonical events when a customer interacts:
| Event | When |
|---|---|
PageView | Every page load |
ViewContent | Product page view |
AddToCart | Customer adds to cart (or fast-checkout opens) |
InitiateCheckout | Customer reaches the checkout step |
Purchase | Order successfully placed |
Lead | Landing-page form-fill (when distinct from purchase) |
Per-pixel mappings: Facebook uses these names directly; TikTok and Snapchat have equivalents auto-mapped; GA4 uses view_item, add_to_cart, begin_checkout, purchase.
Setup — Facebook Pixel
- In Meta Events Manager, create a Pixel and copy its ID.
- Open
/dashboard/pixelsin DZBuild and paste the Pixel ID into the Facebook field. - (Strongly recommended) Generate a Conversions API access token in Events Manager and paste it too. CAPI sends events server-side, bypassing iOS 14 / browser blockers / ad blockers.
- Save. Events fire immediately on the storefront.
Setup — TikTok / Snapchat / Google Ads / GA4
- Get the Pixel ID (or measurement ID for GA4) from the platform.
- Open
/dashboard/pixels, paste into the matching field. - Save.
For GA4 specifically, you can also wire it via Google Tag Manager — paste the GTM container ID into the GTM field and configure GA4 inside GTM.
Multi-pixel mode
Open /dashboard/pixels/multi to configure multiple instances of the same pixel type. Use cases:
- Running ads from two Meta Business accounts to the same store — each ad account needs its own Pixel.
- Testing a creative with one Pixel and full traffic with another.
- Splitting attribution between a brand pixel and a campaign pixel.
Each instance can have its own CAPI token. Events fire to all configured instances.
Conversions API (CAPI)
CAPI is server-side event sending. The browser-side pixel fires from the customer's device; CAPI fires the same event from DZBuild's servers. This bypasses:
- iOS 14+ tracking restrictions (ATT)
- Brave / Firefox tracking protection
- ad blockers (uBlock, Adblock Plus, etc.)
- network filters (some Algerian ISPs)
DZBuild auto-hashes the customer's email and phone (per Meta's spec) before sending CAPI events. Both browser and server events share an event_id so Meta deduplicates and counts each conversion once. Match-quality (EMQ) typically goes from ~5 to ~9.
Per-landing-page overrides
Each landing page at /dashboard/landing-pages can have its own Pixel that overrides the store-level one. Useful when running multiple campaigns to different ad accounts.
Verifying it works
- Facebook Pixel Helper browser extension — visit your storefront and watch
PageViewandViewContentfire. - Meta Events Manager → Test events — place a real test order; events appear within seconds. CAPI events show up tagged
Server. - TikTok Events Manager → Test events — same flow.
- GA4 → DebugView — same flow.
Best practices
- Always install a Pixel before running paid ads. Without it, the algorithm has nothing to optimize toward.
- Add CAPI the moment you turn on Facebook ads — the EMQ lift compounds over weeks.
- Single source of truth — pick the pixels you'll actively use. Don't run 5 pixels just in case.
- Don't fire fake events — inflating events hurts ad delivery quality long-term.
- Match your ad account to the right Pixel in multi-pixel mode — wrong-pixel attribution wastes spend.
Frequently asked
Q: My Pixel fires but Meta says "low event-match quality." A: Add the Conversions API. Hashed email + phone server-side bumps EMQ significantly.
Q: Can I use both browser-side and CAPI for the same Pixel?
A: Yes — Meta deduplicates by event_id. We send both with matching IDs.
Q: Where do I install Hotjar / Clarity / a custom script?
A: /dashboard/pixels → Custom HTML → paste the snippet. It's injected into every storefront page's <head>.
Q: Will pixels slow my store? A: All pixels are loaded async/non-blocking. Page Speed scores aren't impacted.