

The status list names every silent failure: token, dataset access, restricted event names, OpenAI key, Google Ads labels, consent, form plugin, endpoint and HTTPS.
Netro Ads installs the Meta Pixel, the Meta Conversions API, Google Ads conversion tracking, Google Analytics 4, Google Tag Manager and the ChatGPT Ads (OpenAI) Measurement Pixel and Conversions API from one settings screen and measures the conversions that matter on a service business site: phone calls, WhatsApp messages, form submissions and (optionally) WooCommerce purchases.
It is server-side tracking without a tag server: every conversion is sent from the browser and from your WordPress server (Meta CAPI and OpenAI Conversions API), so an ad blocker or an event name Meta restricts in the browser does not cost you the conversion. Call tracking and WhatsApp click tracking work on any theme, and the consent gate (GDPR, Google Consent Mode v2) is on by default.
The browser event and the server event share a single event ID, so each platform de-duplicates them and counts one conversion instead of two. One user action gets one ID, used for every platform.
Google Ads, Google Analytics 4 and Google Tag Manager
Paste a GA4 measurement ID (G-…), a Tag Manager container (GTM-…) and a Google Ads conversion ID (AW-…) — or the whole snippet Google gives you; the IDs are read out of it. The same actions are then reported to Google:
page_view, generate_lead, contact (with the method: phone, WhatsApp, email…) and, with WooCommerce, purchase with value, currency and transaction ID.transaction_id.dataLayer events you can trigger your own tags on: netroads_contact, netroads_lead, netroads_purchase.Google events are sent from the browser; the server-side channel covers Meta and OpenAI.
ChatGPT Ads (OpenAI)
Paste the Pixel ID and a Conversions API key from ChatGPT Ads Manager and the same actions are measured there too: page views, contact clicks and form submissions (lead_created by default), and with WooCommerce contents_viewed, items_added, checkout_started and order_created. OpenAI’s own rules are applied, which differ from Meta’s: names are normalised without spaces before hashing, amounts are sent as integers in the currency’s minor unit (three decimals for KWD, none for JPY), and the oppref click identifier is carried from the landing page to later server events.
What it measures without any setup per page
data-netroads-conversion="lead" (or "contact") to a button or form.Built for the things that fail silently
Every failure mode of pixel measurement is silent — nothing errors, conversions just stop arriving. The status panel on the settings screen names each one:
fbclid is captured on the landing page and carried through the session, so events from inner pages still carry the click ID.fbp, fbc, IP and user agent are never hashed; email and phone are hashed on the server and passed in plain text to the pixel, which hashes them itself.navigator.sendBeacon and survive the unload.wp-config.php instead of the database.Nothing is sent to the plugin author. This plugin has no servers of its own,
no analytics of its own, no licence check and no usage reporting. The only
destinations it ever contacts are the advertising accounts the site owner
configures: Meta (Facebook), OpenAI (ChatGPT Ads) and Google — each only if the
site owner enters an ID for it.
The consent gate is on by default. On a fresh install the consent mode is
“strict”: no measurement script is loaded and no event is sent until the visitor
agrees. A built-in banner asks, unless one of the supported consent plugins is
detected, in which case that plugin’s decision is used. Turning the gate off is
an explicit choice the site owner has to make in the settings, and the settings
screen says what that means.
The visitor’s browser decides, not the server. The consent state is read in
the browser, so a cached page cannot serve one visitor’s decision to another.
The admin area is never measured. No event is sent from wp-admin, and by
default logged-in administrators, editors and shop managers are not measured on
the front end either.
What leaves the site, once configured and consented to: the event name, the
page URL, the visitor’s IP address and user agent, Meta’s own _fbp / _fbc
cookies, and — for form and order conversions — the email address, phone number,
name, city, postcode and country the visitor typed, SHA-256 hashed before they
leave the server. The site owner is the data controller for all of it.
This plugin sends data to Meta (Facebook) and, if you configure them, to OpenAI and Google. Nothing is sent before you enter an ID.
Meta Conversions API (graph.facebook.com) — when you save a dataset ID and an access token, conversion events are sent from your server: event name, event time, page URL, the visitor’s IP address and user agent, the _fbp / _fbc cookies, and — for form and order conversions — the email address, phone number, name, city, postcode and country hashed with SHA-256 before they leave your site. Terms: https://www.facebook.com/legal/terms/businesstools — Privacy: https://www.facebook.com/privacy/policy
Meta Pixel (connect.facebook.net) — the pixel script is loaded in the visitor’s browser and reports the same events. Terms and privacy as above.
Meta pixel configuration (connect.facebook.net/signals/config/<id>) — read once every 12 hours in the admin area to detect event names Meta restricts on your pixel. No visitor data is sent.
The plugin also reads the site’s own home page once every six hours from the
admin area, to detect measurement tags installed by the theme or another plugin.
That request stays on the site’s own domain.
OpenAI Measurement Pixel (bzrcdn.openai.com, bzr.openai.com) — loaded in the visitor’s browser only if an OpenAI Pixel ID is saved, and only after marketing consent. It reports the same events and handles OpenAI’s own click identifier. Terms: https://openai.com/policies/advertising-terms/ — Privacy: https://openai.com/policies/
OpenAI Conversions API (bzr.openai.com/v1/events) — when an OpenAI Pixel ID and Conversions API key are saved, conversion events are sent from your server: event name, event time, page URL, the visitor’s IP address and user agent, OpenAI’s oppref and obref identifiers, and — for form and order conversions — the email address, phone number and name hashed with SHA-256, plus city, region, postcode and country as plain text, as OpenAI’s documentation specifies. The “Test server connection” button sends one event with validate_only, which OpenAI checks but does not save. Documentation: https://developers.openai.com/ads/conversions-api
Google (googletagmanager.com, google-analytics.com, googleadservices.com) — loaded in the visitor’s browser only if you enter a GA4, Google Tag Manager or Google Ads ID, and in the default strict consent mode only after the visitor agrees. In the optional Consent Mode v2 “advanced” setting they load before consent without writing cookies. It reports the page view and the conversions listed above; no data is sent from your server. Terms: https://policies.google.com/terms — Privacy: https://policies.google.com/privacy