Do You Need an Ad Server in 2026?

By Oct 20, 2015 7 min read Updated: Sep 8, 2026

Build Your First AI Project This Weekend

Stop consuming tutorials. Start creating. Get the free step-by-step guide.

Stop consuming tutorials. Start creating. Get the free step-by-step guide.

2026 Update:

I originally wrote this as a 2015 “install Revive on a VPS” tutorial. That is the wrong default now.

Most advertisers do not need an ad server. You need pixels, a click tracker if you buy media, and analytics on the site.

You need an ad server when you are the one serving ads onto inventory you control: a publisher site, a network, a retail media unit, or a direct deal with a site that will paste your tag.

If that is not you, stop here. Put the Google tag and Meta pixel on the thank-you page. Add server-side conversion APIs. Go run traffic.


This page used to promise “complete control” and a weekend LAMP install. I still run into people who treat Revive like a growth hack.

It is not.

An ad server is plumbing for delivery. Pixels are plumbing for measurement. Mixing those up is how you spend two days chmod-ing /var instead of launching the campaign.


Quick Navigation

SectionWhat You’ll Learn
Ad server vs pixelThree different jobs
Who actually needs oneHonest yes/no
Current optionsGAM, Kevel, Revive, hosted
If you still self-hostWhat changed, not a full install

Ad Server vs Pixel vs Tracker

Three tools. Three jobs. People mash them together because they all have the word “ad” in the conversation.

Pixel / conversion API

A snippet (or server call) that tells Google, Meta, TikTok, or LinkedIn “this person converted.” That is how the buy side optimizes. Enhanced Conversions, Meta CAPI, TikTok Events API. You do this in Google Tag Manager or the native integration. You do not need Revive for this.

Click tracker

Sits between the ad click and your landing page. Captures the click ID, device, geo, and later the conversion via postback. That is how you know which placement made money. See the click tracking guide. Voluum, RedTrack, Keitaro, Binom. Still not an ad server.

Ad server

Receives a request from a page (or app), picks a creative, records the impression, and returns the banner. Publishers use this. Networks use this. Retail media uses this. Direct-sold house ads use this.

If you are a plumber running Google Ads to a landing page, you are the advertiser. The publisher already has an ad server. You do not install a second one.


Who Actually Needs an Ad Server

You do not need one if:

  • You buy Google, Meta, Microsoft, or TikTok ads and send traffic to your site
  • You only need conversion tracking and remarketing audiences
  • You run affiliate offers through a network (they serve the offer; you track the click)
  • You have a content site and use AdSense, Ezoic, or a widget (HotKey-style) instead of selling house banners

You might need one if:

  • You own sites and sell direct banners to local advertisers (the dentist on the chamber site)
  • You run a small ad network and need rotation, caps, and zone tags
  • You are building a sponsored-listing / retail-media product and need an API
  • A publisher will take your tag instead of going through a network, and you have enough volume that the network cut actually matters

The volume test:

If you cannot name the publisher and the monthly impression number, you do not need this. “I want an edge” is not a use case.

I used to pitch 30-50% cheaper CPMs from cutting out the network. That only exists when you already have the relationship and the ops to invoice, QA tags, and fight discrepancies. Most solo media buyers never get there. They should get better at campaign optimization instead.


What To Use in 2026

1. Nothing (most of you)

Install:

  • Google tag + Enhanced Conversions (if you buy Google)
  • Meta Pixel + Conversions API (if you buy Meta)
  • Plausible or GA4 for on-site behavior
  • A click tracker only if you buy from networks that do not give you a clean click ID in the ad platform

That is the stack. It is boring. It makes money.

2. Google Ad Manager (you are a publisher)

Google Ad Manager is the default if you have real inventory: sites, apps, video. There is a small-business GAM that is free up to a large impression cap (Google publishes regional thresholds; North America has historically been in the tens of millions of display impressions per month before they push you to GAM 360). You need an approved AdSense account to get in.

Use GAM if you are selling ads on your properties and you want AdSense / AdX competing with direct campaigns. Do not use it as a “secret weapon” for buying traffic.

3. Kevel (you are building an ad product)

Kevel is an API ad server. Sponsored listings, retail media, custom native units. Quote-based. Third-party writeups put it in enterprise budget territory, not a $20 VPS experiment. If you do not have engineers and a product spec, skip it.

4. Hosted Revive or AdButler (small publisher, direct sold)

Revive Hosted starts at $10/month. AdButler is a paid hosted server aimed at publishers who do not want PHP.

These make sense when a local paper, niche blog, or association site sells a 300x250 to a plumber and needs a tag, a report, and an invoice. That is a real business. It is not “set up your own ad server for competitive advantage.”

5. Self-hosted Revive (last resort)

Revive Adserver is still alive. Current stable is v6.0.8, released June 25, 2026, with PHP 8.1-8.5 support and ongoing security advisories (download page). It is the phpAdsNew / OpenX Source lineage. The UI looks like 2009. The code still ships.

Use it only if you already know you need a self-hosted server, you can patch on the day a CVE drops, and you refuse a $10 hosted plan.

Do not run it on shared hosting. Do not leave install.php on the box. Do not skip HTTPS. Revive has had a string of 2025-2026 security releases. Unpatched ad servers get popped. Then someone else’s malware rides your publisher tags.


If You Still Self-Host Revive

I am not reprinting the 2015 chmod novel.

Official docs:

Short version:

  1. VPS, not shared hosting. LAMP/LEMP. PHP 8.1+. MySQL 8 or Postgres. SSL on the hostname.
  2. Download current zip from revive-adserver.com (as of this writing, 6.0.8). Do not grab a random 6.0.1 mirror.
  3. Create a dedicated database user with privileges on that database only.
  4. Run the installer over HTTPS. Delete www/admin/install.php when it finishes.
  5. Cron the maintenance script daily. Back up the database. Subscribe to their security posts.

Inventory model is the same as it was:

  • Advertiser -> Campaign -> Banner
  • Website -> Zone -> Invocation code

Give the publisher the zone tag. Serve house ads, direct sold, or a remnant passback. That is the product.

If you are using Revive to “fire retargeting pixels after 3 impressions,” you can do that. You can also do frequency and audiences inside Meta and Google without running PHP on a droplet. Pick the boring path unless you have a reason.


Direct Deals Without Playing Ad-Server Hero

Want cheaper inventory? The move is still the relationship, not the software.

You find a site that converts. You email the owner. You offer a flat monthly or a CPM they can count on. They already have GAM, AdSense, or a WordPress plugin. Ask them to run your line item in their existing server.

If they cannot, then you send a Revive or AdButler tag.

If they will not take a tag at all, you buy through the network like everyone else and you track with a click tracker.


What This Is Not

This is not a way to bypass Google Ads policy.

This is not a replacement for CAPI.

This is not required for remarketing.

This is not a weekend project that “compounds” if you never get a publisher to paste the code.

AI agents can write the Nginx config. They cannot get the publisher to answer the email. That is still the job.


Take Away

SituationUse
Buying ads to a landing pagePixels + CAPI. Maybe a click tracker. No ad server.
Publishing a site, selling a few direct bannersGAM, Revive Hosted, or AdButler
Building sponsored listings / retail mediaKevel or a custom stack. Budget accordingly.
“I want to self-host for fun”Don’t. Read the tracking guide instead.

Next step: If you came here to measure campaigns, leave. Set up Plausible and a conversion API. If you came here because a publisher asked for a tag, use hosted Revive or GAM, not a 2015 VPS cookbook.

Questions? Contact me.

Next AdPlexity Review: Mobile & Native Ad Spy Tool