Skip to main content

Choose Your Integration

Your site needs to send one HTTP response header (X-Better-Web-Welcome) on every page. That's what tells the browser extension you're a partner site and starts earning you revenue.

Which integration is right for you depends on two things:

  1. What you want to offer subscribers
  2. What your site is built with

Step 1 - What are you offering subscribers?

This determines how much integration work you'll do.

You qualify for Clean Web earnings just by declaring participation. Subscribers experience your site exactly as everyone else does - you're just getting paid for their visit.

You only need to inject the X-Better-Web-Welcome header. Any method below works.


You're offering the Clean Web feature actively - subscribers see a version without ads and popups. Your server needs to read each visitor's subscription token and conditionally adjust the response.

You need a server-side module (PHP, Node.js, or the WordPress plugin).


"I want to give subscribers free access through my paywall"

You're offering the One Pass feature. Your server needs to detect subscribers and bypass paywall logic for them.

You need a server-side module (PHP, Node.js, or the WordPress plugin).


Step 2 - Pick your integration

WordPress

The Zero Ad Network WordPress plugin installs in minutes and handles everything: the Welcome Header, subscriber detection, and automatic suppression of supported ad, cookie consent, popup, and paywall plugins. No code required.

Use this if: Your site runs WordPress, regardless of whether you show ads or have a paywall.

WordPress Plugin


PHP (Laravel, Symfony, plain PHP)

Install the Composer package and add a single middleware to inject the Welcome Header and parse the subscriber token on each request.

Use this if: Your site is custom PHP and you want to conditionally adjust content for subscribers.

PHP Composer module


Node.js, Bun, or Deno

Install the @zeroad.network/token npm package and add middleware to inject the header and parse subscriber tokens.

Use this if: Your site runs Express, Fastify, Hono, or any other Node/Bun/Deno HTTP framework.

Node.js / Bun / Deno


Static site or hosted platform (no server-side code)

Your site generates HTML statically - no server-side code runs per request. This limits you to passive Clean Web earnings: you declare you're a partner, the extension records visits, and you earn. You can't conditionally hide ads (because there's no code running to do it), but if your site is already ad-free this is no limitation at all.

Pick based on what you can edit:

I can...Use...
Edit my proxy server config (Nginx, Apache, Caddy)Proxy server config - one line in your server config
Edit individual HTML files or my static site generator outputHTML meta tag - one <meta> tag in <head>
Important: static methods are for clean-content sites only

If your site shows ads or has a paywall, you cannot use the static method to hide them - there's no code running to read the subscriber token. You'll need a server-side module instead.


My language isn't listed

We currently support PHP and Node.js/Bun/Deno natively. The token protocol is open: any language that can handle HTTP headers and verify ED25519 signatures can implement it.

Other languages


Summary

My siteBest integration
WordPress (any setup)WordPress plugin
PHP - Laravel, Symfony, plain PHPPHP Composer module
Node.js / Bun / Deno - Express, Fastify, Hono, etc.npm module (@zeroad.network/token)
Static HTML, can edit proxy serverProxy server config (Nginx/Caddy/Apache)
Static HTML, can only edit HTML filesHTML meta tag
Already ad-free, no paywallAny of the above - use the simplest one
Shows ads or has a paywallServer-side module (WordPress / PHP / Node)