Publisher ad operations is the day-to-day work that keeps ad revenue flowing: setting up and trafficking direct campaigns in your ad server, running header bidding and exchange demand, protecting ad quality, keeping ads.txt and sellers.json accurate, and reporting on revenue. Outsourcing means giving some or all of that work to an outside team that works inside your accounts.
This guide explains what that work involves, which parts are usually outsourced, what good practice looks like in each area, and how to check whether it is working. Our publisher ad operations service page describes how we work with publishers. If you are still deciding whether to outsource, read when to outsource publisher ad operations first.
1What publisher ad ops actually covers
| Area | Typical tasks | Common tools |
|---|---|---|
| Direct campaigns | Order and line item setup, creative trafficking, targeting, pacing checks, makegoods | Google Ad Manager (GAM) |
| Header bidding | Prebid configuration, bidder adapters, timeouts, price floors, analytics | Prebid.js, Prebid Server, SSPs |
| Demand partners | SSP onboarding, deal setup, performance reviews, removing weak partners | Index Exchange, Magnite, PubMatic, OpenX, Amazon Publisher Services and others |
| Ad quality | Blocking unwanted advertisers, categories and creative behavior, investigating complaints | GAM protections, brand safety and creative scanning tools |
| Compliance | ads.txt, app-ads.txt, sellers.json, consent signals | CMP, IAB frameworks, validators |
| Reporting | Revenue by source, fill, viewability, page RPM, forecasting | GAM reports, SSP dashboards, analytics |
Most publishers do not outsource all of this. A common split is that the publisher keeps the direct sales relationships and editorial decisions, while an external team handles trafficking, QA, troubleshooting and routine optimization.
2Header bidding: timeouts, floors and bidder count
Header bidding lets several demand sources bid on an impression at the same time, before the ad server decides. It adds revenue potential but also adds page weight and latency. Three settings do most of the work.
Timeout
The auction timeout is how long the page waits for bids. Too short, and slower bidders miss out. Too long, and ads load late, which hurts viewability and user experience. Many publishers start in the range of about one to two seconds on desktop and mobile web and then adjust using their own data. Check bid response times by bidder, and watch the share of bids that arrive after the timeout. If a bidder rarely returns in time, a longer timeout will not fix it. Consider dropping the bidder.
Price floors
Floors set a minimum price. A single high floor can reduce fill. Many publishers set different floors by device, geography, ad size or ad position, and by bidder where the data supports it. Prebid has a Price Floors module for this, and GAM has unified pricing rules. Change floors in small steps and compare revenue per thousand page views (RPM) and fill before and after, rather than judging by CPM alone.
Number of bidders
More bidders do not always mean more revenue. Multiple SSPs often reach the same DSPs, so extra partners can add latency without adding unique demand. Review each bidder for win rate, average bid and revenue share. Remove the ones that rarely win. For a setup walkthrough, see our header bidding setup guide for publishers.
For example, a publisher with eight bidders might find that three of them account for most wins and two almost never respond before the timeout. Removing those two could cut page latency with little revenue impact. This is an illustration. Always test against your own data.
3GAM: line items, priorities and forecasting
Google Ad Manager decides which ad serves, so messy setup there quietly costs revenue. Review these items regularly.
- Priority and type: Check that sponsorship, standard and price-priority line items are ranked as you intend, and that house or backfill line items are not outcompeting paid demand.
- Targeting overlap: Direct campaigns with overlapping targeting can cut delivery for each other. Use the forecasting tool and the inventory availability check before you sell.
- Stale items: Archive expired orders and old line items. They slow reporting and make troubleshooting harder.
- Key-values: Keep a documented list. Wrong or missing key-values from header bidding are a common cause of demand that never wins in the ad server.
- Frequency caps and delivery: Confirm caps are set at the right level and that guaranteed campaigns are on track against their goal.
Our GAM yield optimization guide and the header bidding and yield management solution page cover this in more depth.
4ads.txt and sellers.json: a simple audit
ads.txt is a public file on your domain that lists which companies are authorized to sell your inventory. If it is out of date, buyers may refuse to bid on you, or you may be exposed to counterfeit inventory. Here is a basic audit you can repeat quarterly.
- Fetch yourdomain.com/ads.txt and confirm it loads over HTTPS without redirect problems.
- List every demand partner and confirm each line is still in use. Remove entries for partners you no longer work with.
- For each active partner, copy the exact lines they provide. A small typo in the account ID means the line does not match.
- Check each seller ID against the partner's sellers.json file where available, and confirm the relationship type (DIRECT or RESELLER) is correct.
- If you use managed or reseller partners, check that their parent entries are included.
- Run the file through a validator and re-check after any partner change.
5Ad quality and user experience
Bad ads cost more than they appear to. A single redirecting or auto-playing creative can lead to user complaints and demand partners being penalized. Good practice includes using your ad server's and SSPs' protections to block categories and advertisers, keeping a log of reported creatives with the source (the SSP, the buyer, the creative ID) and acting on it, and checking page layout so refreshing or sticky ads do not hurt Core Web Vitals. Define in writing who responds when a complaint arrives and how quickly.
6Reporting that you can act on
A useful report does more than total revenue. Ask for the following on a regular schedule.
- Revenue and RPM by demand source, device and placement.
- Fill rate and unfilled impressions by placement.
- Bid rate, win rate and response time by bidder.
- Viewability by placement.
- Delivery against goal for direct campaigns.
When numbers from your ad server and your SSPs disagree, small differences are normal. Large or growing gaps are worth investigating. Typical causes include ad blockers, timeouts, creative rendering and differences in how each system counts an impression.
7What to outsource and what to keep
| Outsource first | Keep in-house or share |
|---|---|
| Trafficking and QA of direct campaigns | Direct sales relationships and pricing |
| Header bidding setup, monitoring and bidder reviews | Decisions on which partners you want a relationship with |
| ads.txt and sellers.json audits | Final approval of changes that affect site layout |
| Routine reporting and reconciliation | Editorial decisions and ad density policy |
Ask any provider how they access your accounts (named users, least privilege), how changes are logged, and how they hand work back to you. You should always keep ownership of your ad server, SSP and domain accounts.
8How to start
- Give the provider read access first and ask for a short review of your setup: GAM structure, Prebid configuration, ads.txt, and reporting gaps.
- Agree on a priority list from that review.
- Choose two or three recurring tasks to hand over first, such as trafficking and weekly reporting.
- Review results after a month using your own revenue and delivery data.
- Expand scope only after the first tasks run smoothly.
If you are comparing exchanges as part of this work, our SSP comparison for mid-size publishers may help. When you are ready, see how our publisher ad operations service works or contact us with your ad stack.






