Description
Overview
LayerSync is server-side conversion tracking for WooCommerce. It captures ecommerce events and forwards them through the LayerSync SaaS to nine ad and analytics platforms via their server-side APIs — Meta (Conversions API), Google Analytics 4 (Measurement Protocol), Google Ads (Enhanced Conversions), TikTok (Events API), Pinterest, Snapchat, LinkedIn, Reddit, and X (Twitter).
Configuration lives in the LayerSync dashboard, so there’s no Google Tag Manager server container, no custom tracking subdomain, no external hosting to manage. The plugin handles WooCommerce; LayerSync handles per-platform delivery.
Why Server-Side Tracking
Browser pixels are increasingly blocked by ad-blockers and degraded by Safari/iOS tracking-prevention. Sending the same events server-to-server restores conversion data your ad platforms use to optimize. LayerSync ships WooCommerce events over HMAC-signed HTTPS to the LayerSync hub, which calls each platform’s CAPI with a shared event_id so browser and server halves are deduplicated automatically.
What’s Included
Nine ad platforms, one plugin — Meta CAPI, GA4 MP, Google Ads Enhanced Conversions, TikTok Events API, Pinterest CAPI, Snapchat CAPI, LinkedIn CAPI, Reddit CAPI, X CAPI. Browser pixels + server-side CAPI for all of them, with automatic deduplication.
WooCommerce funnel coverage — view item, add to cart, view cart, begin checkout, add payment info, purchase, refund. HPOS-compatible. Triple-fallback purchase capture (payment_complete + checkout_order_processed + woocommerce_thankyou) so custom checkouts still fire.
Lead-form auto-detect — Contact Form 7, WPForms, Ninja Forms, Formidable Forms, and WooCommerce checkout forms.
Browser-side recovery engine — save-first localStorage queue, priority-aware overflow (purchases never dropped), cross-tab serialization, exponential backoff with jitter, multi-day retention (up to 30 days for purchases), sendBeacon on page exit.
Privacy & compliance — per-event consent snapshot, default-denied mode, CMP integration via window.LayerSync.setConsent(), SHA-256 PII hashing, IP anonymization, GDPR / UK ICO / CCPA-aware (Meta Limited Data Use, Do-Not-Sell drop mode).
Operational visibility (via the LayerSync hub) — real-time event status, per-platform delivery success rates, anomaly detection, Slack/PagerDuty/email digest alerts (paid plans).
Free vs Paid Plans
Free includes browser pixels for all 9 platforms, server-side CAPI to one platform of your choice, 1 site, 1 team seat, 10,000 events/month, WooCommerce + lead-form auto-tracking, event quality scoring, real-time event log.
Paid plans add: server-side CAPI to all 9 platforms, higher event quotas, multiple sites, team seats, Slack/PagerDuty alerts, anomaly detection, audience builder, ROI dashboard, user journeys, customer profiles, automatic conversion recovery, custom event definitions, white-label (enterprise), custom ingest domain (enterprise).
For Developers
LayerSync exposes a JavaScript API, a same-origin REST endpoint, and WordPress hooks for custom event tracking.
JavaScript API:
window.LayerSync.track('lead', {email: 'user@example.com', value: 25.00, currency: 'USD'});
window.LayerSync.setConsent({ad_storage: 'granted', ad_user_data: 'granted'});
REST endpoint (same-origin, nonce-protected, survives ad-blockers and corporate firewalls):
POST /wp-json/layersync/v1/events
WordPress filter hooks: layersync_event_payload, layersync_event_before_enqueue, layersync_event_after_delivery, layersync_consent.
Full API documentation: layersynchub.com/docs.
Compatibility
Works alongside Cookiebot, CookieYes, OneTrust, Borlabs Cookie, Complianz, and any CMP that supports a JS consent callback. Compatible with WP Rocket, LiteSpeed Cache, W3 Total Cache, Cloudflare, and other major caching/CDN solutions.
Getting Started
- Sign up at layersynchub.com and create your first site.
- Install and activate LayerSync from the WordPress plugin directory.
- Visit LayerSync Settings in wp-admin and paste your API key, API secret, and Site ID.
- Click Test connection — once green, configure your platforms (Meta Pixel ID, GA4 Measurement ID, etc.) in the LayerSync dashboard.
- Events start firing within seconds; check the Live Events tab to confirm.
External services
This plugin connects to external third-party services to provide its functionality. Below is a complete list of all external services, when they are called, what data is transmitted, and links to their terms of service and privacy policies.
LayerSync SaaS Hub (Always Active):
- Service: LayerSync (https://layersynchub.com)
- Purpose: Receives every WooCommerce / form / page event from your site and dispatches matching Conversions API calls to each connected ad platform. Stores the order ledger for conversion recovery, the queue table for outage survivability, and provides the configuration dashboard for your platforms.
- What data is sent: Event name, timestamp, hashed user data (email, phone, name SHA-256), product/order data (SKU, value, currency, quantity), browser-side context (page URL, referrer, user agent, IP — IP can be anonymized in settings),
event_idfor deduplication, consent snapshot - When it’s sent: When a tracked event occurs (page view, product view, add to cart, purchase, refund, lead, etc.). Browser-side: sent via the same-origin REST proxy. Server-side: sent from PHP via WordPress HTTP API.
- Service provider: LayerSync
- Terms of Service: https://layersynchub.com/terms
- Privacy Policy: https://layersynchub.com/privacy
When You Enable Meta Pixel / Conversions API:
- Service: Meta (Facebook) Graph API
- Purpose: Send conversion events to Meta for ad optimization
- What data is sent: Event name, timestamp, hashed user email/phone, click ID (
fbclid/fbp/fbc), product SKU, revenue, IP, user agent, Pixel ID - When it’s sent: Automatically when a tracked event occurs and Meta is enabled in your LayerSync dashboard
- Service provider: Meta Platforms, Inc.
- Terms of Service: https://www.facebook.com/legal/terms
- Privacy Policy: https://www.facebook.com/privacy/policy
When Loading Meta Pixel Script (If Enabled):
- Service: Facebook Connect CDN
- Purpose: Load fbevents.js for browser-side Meta Pixel
- What data is sent: Standard HTTP request data (IP, user agent, referrer)
- When it’s sent: On every page load when Meta browser tracking is enabled
- Script URL: https://connect.facebook.net/en_US/fbevents.js
When You Enable Google Analytics 4 / Google Ads:
- Service: Google Analytics 4 Measurement Protocol + Google Ads API
- Purpose: Send analytics + conversion events to Google for reporting and ad optimization
- What data is sent: Event name, page URL, referrer, session ID, client ID, IP, user agent, device info, hashed user data for Enhanced Conversions
- Service provider: Google LLC
- Terms of Service: https://marketingplatform.google.com/about/analytics/terms/us/
- Privacy Policy: https://policies.google.com/privacy
When Loading Google Tag Script (If Enabled):
- Service: Google Tag Manager CDN
- Purpose: Load gtag.js for browser-side GA4 + Google Ads tracking
- Script URL: https://www.googletagmanager.com/gtag/js
When You Enable TikTok Events API:
- Service: TikTok Business API
- Purpose: Send conversion events to TikTok for ad optimization
- Script URL (if browser pixel enabled): https://analytics.tiktok.com/i18n/pixel/events.js
- Privacy Policy: https://www.tiktok.com/legal/privacy-policy
When You Enable Pinterest Conversions API:
- Service: Pinterest Tag + Conversions API
- Purpose: Send conversion events to Pinterest for ad optimization
- Script URL (if browser pixel enabled): https://s.pinimg.com/ct/core.js
- Privacy Policy: https://policy.pinterest.com/en/privacy-policy
When You Enable Snapchat Conversions API:
- Service: Snap Pixel + Conversions API
- Purpose: Send conversion events to Snapchat for ad optimization
- Script URL (if browser pixel enabled): https://sc-static.net/scevent.min.js
- Privacy Policy: https://snap.com/en-US/privacy/privacy-policy
When You Enable LinkedIn Insight Tag + Conversions API:
- Service: LinkedIn Marketing API
- Purpose: Send conversion events to LinkedIn for ad optimization
- Script URL (if browser pixel enabled): https://snap.licdn.com/li.lms-analytics/insight.min.js
- Privacy Policy: https://www.linkedin.com/legal/privacy-policy
When You Enable Reddit Pixel + Conversion API:
- Service: Reddit Ads API
- Purpose: Send conversion events to Reddit for ad optimization
- Script URL (if browser pixel enabled): https://www.redditstatic.com/ads/pixel.js
- Privacy Policy: https://www.reddit.com/policies/privacy-policy
When You Enable X (Twitter) Pixel + Conversion API:
- Service: X Ads API
- Purpose: Send conversion events to X for ad optimization
- Script URL (if browser pixel enabled): https://static.ads-twitter.com/uwt.js
- Privacy Policy: https://x.com/en/privacy
Important Notes:
- No automatic data sharing: LayerSync does NOT send any data to ad platforms unless you explicitly enable them in your LayerSync dashboard
- Consent-aware: LayerSync respects user consent state via the
window.LayerSync.setConsent()API and only fires browser pixels and server events after consent is granted - You control the data: You choose which platforms to enable, what events to track, and what user data to include (emails, phones, etc.)
- Required account: This plugin requires a LayerSync account to operate. The plugin alone does not function without API credentials from layersynchub.com.
Privacy Policy
LayerSync sends the following data to the LayerSync SaaS hub (https://layersynchub.com):
Per-Event Data:
- Event name (e.g.
purchase,add_to_cart) - Timestamp
- Page URL and referrer
- User agent
- IP address (configurable — can be anonymized)
event_idfor deduplication- Visitor consent snapshot at the moment of the event
- LayerSync first-party visitor ID (
layersync_uidcookie — UUIDv4, 2-year sliding expiry)
For E-Commerce Events:
- Product SKU, title, category, image URL, price, currency, quantity
- Order ID, total, currency (for purchase / refund events)
For Lead / Form Events:
- Form ID, submission ID, field values you’ve configured as trackable
Hashed User Data (when available, hashed BEFORE leaving your server):
- Email (SHA-256)
- Phone (SHA-256)
- First name (SHA-256)
- Last name (SHA-256)
- City, state, zip, country (SHA-256)
LayerSync hashes PII server-side before forwarding to any ad platform.
External Data Sharing (Only When You Enable Each Platform):
Per-platform data forwarding is documented in the External services section above. No data is sent to any ad platform unless you explicitly enable it in your LayerSync dashboard.
Privacy Controls:
- IP Anonymization: Available in Settings Privacy.
- Consent Integration: Respects
window.LayerSync.setConsent({...})for Cookiebot, CookieYes, OneTrust, Borlabs Cookie, Complianz, and custom consent managers. - Default-denied mode: Treats all visitors as consent-denied until a CMP signals otherwise — suitable for EU/UK traffic.
- Right to delete: Send a
POST /api/v1/privacy/deleterequest to LayerSync with the visitor’sexternal_id(or hashed email / phone) and all matching events, audit rows, customer profile entries, landing signals, and delivery records are removed.
Your Responsibilities:
- Disclose LayerSync’s data flow in your site’s privacy policy
- Obtain user consent before tracking, where required by law
- Configure data retention and privacy settings appropriately
- Honor user data-deletion requests via the LayerSync privacy API
Support
Trademarks & Third-Party Services
LayerSync integrates with various third-party analytics and advertising platforms. All trademarks, service marks, and company names mentioned in this plugin are the property of their respective owners.
Third-Party Platforms:
- Meta, Facebook, Instagram, and Facebook Pixel are trademarks of Meta Platforms, Inc.
- Google, Google Analytics, Google Ads, and GA4 are trademarks of Google LLC.
- TikTok is a trademark of ByteDance Ltd.
- Pinterest is a trademark of Pinterest, Inc.
- Snapchat is a trademark of Snap Inc.
- LinkedIn is a trademark of Microsoft Corporation.
- X (Twitter) is a trademark of X Corp.
- Reddit is a trademark of Reddit, Inc.
- WooCommerce is a trademark of Automattic, Inc.
Integration Requirements:
- Users must have active accounts with third-party platforms to use their respective features
- API access requires platform-specific credentials and compliance with their terms of service
- Data transmission follows each platform’s API specifications and privacy policies
- Users are responsible for compliance with each platform’s terms of service
LayerSync is an independent plugin and SaaS, and is not officially affiliated with, endorsed by, or sponsored by any of the companies mentioned above. All product names, logos, brands, and trademarks are property of their respective owners.
Data Privacy: LayerSync forwards event data to enabled ad platforms only with user consent. No data is transmitted to any third party unless explicitly configured by the site administrator.
Installation
From WordPress Admin
- Go to Plugins Add New
- Search for “LayerSync”
- Click Install Now, then Activate
Manual Upload
- Download the ZIP from WordPress.org
- Go to Plugins Add New Upload Plugin
- Upload the ZIP, install, and activate
After Activation
- Sign up at layersynchub.com if you haven’t already
- Create a site in your LayerSync dashboard and copy your API key, API secret, and Site ID
- Go to LayerSync Settings in wp-admin
- Paste your credentials and click Test connection
- Once green, configure your ad platforms (Meta Pixel ID, GA4 Measurement ID, etc.) in your LayerSync dashboard
- Events start firing automatically; verify in the Live Events tab
WooCommerce is recommended but not required — without WC, the plugin runs in pixel-only mode (no add-to-cart / purchase hooks, but browser pixels still fire and lead-form tracking works).
FAQ
-
How does LayerSync improve ROAS and lower CPA?
-
When browser-side pixels miss conversions (due to iOS 14+, ad blockers, or cookie restrictions), ad platforms optimize on incomplete data and your cost-per-acquisition rises. LayerSync fixes this by sending conversion events server-to-server to every connected platform via their respective Conversions API. Browser and server events are deduplicated automatically using a shared
event_id, so platforms see more of your real conversions without double-counting. More complete data means better optimization and improved Return on Ad Spend. -
How do I set up Meta Pixel with server-side tracking?
-
- Install and activate LayerSync
- Sign up at layersynchub.com and create your site
- In your LayerSync dashboard, go to Platforms Meta and paste your Pixel ID + Conversions API Access Token (both from Meta Events Manager)
- Save and click Test Connection
LayerSync automatically fires both the browser Meta Pixel and Meta Conversions API events server-to-server. They’re deduplicated using a shared
event_id. User data (email, phone, name, address) is SHA-256 hashed and sent as Advanced Matching parameters for maximum Event Match Quality (EMQ). No Google Tag Manager server container required. -
What is server-side tracking and why do I need it?
-
Server-side tracking sends conversion events directly from your server to ad platforms — instead of relying only on browser JavaScript pixels. This matters because:
- Ad blockers block ~40% of browser tracking pixels
- iOS 14+ App Tracking Transparency reduced Meta Pixel reported conversions by 30–40%
- Safari ITP limits first-party cookies to 7 days, causing session data loss
- Browser privacy features increasingly restrict third-party tracking
With server-side tracking, your conversion data bypasses all browser restrictions. Ad platforms see your real sales, optimize better, and your ROAS improves.
-
Do I need a LayerSync account?
-
Yes. This plugin connects WordPress to the LayerSync SaaS, which performs the actual server-to-server dispatch to each ad platform. The LayerSync account is what configures which platforms are enabled, stores your API credentials encrypted, and runs the queue + recovery worker. A free plan is available.
-
How many ad platforms does LayerSync support?
-
Nine: Meta (Facebook & Instagram), Google Ads, Google Analytics 4, TikTok, Pinterest, Snapchat, LinkedIn, Reddit, and X (Twitter). All nine are server-side, all nine are available on paid plans. The free plan supports browser pixels for all 9 and server-side CAPI for one of your choice.
-
Does LayerSync work with WooCommerce?
-
Yes. LayerSync automatically tracks the full WooCommerce funnel: product view add to cart view cart begin checkout add payment info purchase refund. Order metadata (value, SKU, currency, quantity, category) is captured automatically. HPOS-compatible. Triple-fallback purchase hook (payment_complete + checkout_processed + thankyou) ensures no transaction is missed.
-
What about Easy Digital Downloads, SureCart, MemberPress?
-
The current release covers WooCommerce and any custom integration via the JavaScript / REST APIs. Support for additional ecommerce platforms is on the roadmap.
-
Does LayerSync slow down my website?
-
No. The browser tracking script loads asynchronously (non-blocking), events are batched server-side, the same-origin REST proxy is lightweight, and the plugin uses indexed database tables. Compatible with WP Rocket, LiteSpeed Cache, W3 Total Cache, Cloudflare, and other caching/CDN solutions. The browser-side recovery queue uses localStorage with strict size limits — no measurable impact on page load.
-
Does LayerSync work with High-Performance Order Storage (HPOS)?
-
Yes. LayerSync is fully compatible with WooCommerce HPOS. WC order data is read via the standard
wc_get_order()API which abstracts over both storage modes. -
Is LayerSync GDPR and CCPA compliant?
-
Yes. The plugin captures per-event consent state and respects it during retries. There’s an admin toggle for “default to denied until consent” suitable for EU/UK traffic. CMPs integrate via
window.LayerSync.setConsent({ad_storage: 'granted', ad_user_data: 'granted', ad_personalization: 'granted'}). PII (email, phone, name, address) is SHA-256 hashed server-side before any platform handoff. IP anonymization is supported. -
Does LayerSync support Google Consent Mode v2?
-
Yes — via the
setConsent()API. Pass the v2 fields (ad_user_data,ad_personalization) and LayerSync forwards them to Google’s gtag in the correct shape. -
Does LayerSync support Meta Limited Data Use (LDU) for California traffic?
-
Yes. The Privacy tab has an LDU toggle. When enabled, every Meta server event ships with
data_processing_options: ['LDU']so California-resident traffic is CCPA-compliant. -
What happens if LayerSync’s SaaS goes down?
-
Browser pixels keep firing directly to ad platforms (they’re independent of the LayerSync hub). Server-side events queue in your WordPress database for up to 30 days for critical events (purchases, refunds), 7 days for high-value funnel events (add-to-cart, begin-checkout, lead), and shorter windows for behavioral events. When LayerSync recovers, the queue drains automatically without intervention.
-
Can I track custom events?
-
Yes. Use the JavaScript API:
window.LayerSync.track('button_click', {button_name: 'Download PDF', value: 0});Or the REST endpoint from your own PHP code:
POST /wp-json/layersync/v1/eventsCustom event definitions per site (with per-platform name mapping) are available on paid plans.
-
Can I export my data?
-
Yes. Every report in the LayerSync dashboard has a CSV export. You can also pull data programmatically via the REST API on paid plans.
-
Does LayerSync replace my existing pixel plugins?
-
Yes. The plugin loads each platform’s pixel SDK directly from the platform CDN with hashed Advanced Matching set at init time. You can disable any other Meta/Google/TikTok pixel plugins. Don’t run two plugins that load the same pixel — both will fire, doubling your conversion counts.
-
Can I use LayerSync on client sites / agency white-label?
-
Yes. The free WordPress plugin can be installed on unlimited sites. Each site connects to one LayerSync account. Agencies running multiple client stores use the Growth or Enterprise tiers, which include white-label branding, custom ingest domain, and multi-site management from a single dashboard.
-
What’s the difference between Free and Paid plans?
-
Free includes: browser pixels for all 9 platforms, server-side CAPI to one platform of your choice, 1 site, 1 team seat, 10K events/month, WooCommerce + lead-form auto-tracking, event quality scoring, real-time event log.
Paid plans add: server-side CAPI to all 9 platforms, higher event quotas, multiple sites, team seats, Slack/PagerDuty alerts, anomaly detection, audience builder, ROI dashboard, user journeys, customer profiles, automatic conversion recovery, custom event definitions, white-label (enterprise), custom ingest domain (enterprise).
Reviews
Contributors & Developers
“LayerSync – Conversion Tracking, Pixel Manager, and Server-Side API” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “LayerSync – Conversion Tracking, Pixel Manager, and Server-Side API” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.17.0
- Renamed plugin to better describe what it does: “LayerSync for WooCommerce – Conversion Tracking, Server-Side API, Pixel Manager, GA4”.
- Hardened the public events endpoint: same-origin nonce check, per-IP rate limit, body-size cap, and a block on
purchase/refundevents (those flow only through the WooCommerce server hook now). - Refactored every inline
<script>to ship throughwp_add_inline_scriptagainst registered handles, in line with the WordPress Plugin Directory’s enqueue-API guideline. - Replaced closure-based
register_setting()sanitize callbacks with named static methods so static-analysis tools can resolve them. - Scoped the “Not connected” admin notice to the Dashboard, Plugins list, and WooCommerce Settings only — no more banner on every admin page.
- CSV queue export now neutralizes leading
=,+,-,@characters to prevent spreadsheet formula injection when an admin opens the file. - Declared
Requires Plugins: woocommerce; bumpedRequires at leastto 6.5.
1.16.0
Initial public release.
- Browser pixel injection for 9 ad platforms: Meta (Facebook & Instagram), Google Tag (GA4), Google Ads, TikTok, Snapchat, Pinterest, Reddit, X (Twitter), and LinkedIn.
- Server-side Conversions API forwarding via the LayerSync hub — one connection, every platform.
- Same-origin REST proxy keeps event delivery working through ad-blockers and corporate firewalls.
- Browser-side resilience: events queue locally during outages and drain automatically when connectivity returns.
- Lead-form tracking for Contact Form 7, WPForms, Ninja Forms, and Formidable.
- Privacy-first: per-event consent capture, CMP integration via
window.LayerSync.setConsent({...}), IP anonymization, and SHA-256 PII hashing before any platform handoff. - Catalog sync to LayerSync for one product feed URL consumed by every connected platform.