Frequently asked questions
Quick answers to the questions the checks keep surfacing — masked entities, read-only cards, missing buttons, silent unlinking, incognito capping, demo expiry, API keys and more.
Short answers, grouped by theme. Each links to the page with the full story.
Access and visibility
Why is an entity’s name shown in italics?
Italics mark a masked entity: your role is set to hide the owners of other people’s sites (or
advertisers), and the site or advertiser belongs to someone else, so its identity is hidden — in grids and edit
pages its name is replaced by an anonymized code such as SITE_123. Masking hides who, not
whether: you still see the entity’s volumes and revenue. It does not make the entity
read-only; that comes from a Can view share, which is not shown in italics. See
Sharing and the permission model.
Why is an entire edit page read-only?
Three different mechanisms produce the same look:
- the entity is shared to you as Can view;
- your role has the relevant feature permission at the read-only granting (controls visible, greyed out);
- you are on a demo account looking at the pre-built demo entities.
The fix differs per cause — ask the owner for a Can edit share, ask your network administrator for the permission, or nothing (demo entities stay read-only by design).
Why don’t I see a card, tab or button that a colleague sees?
Almost every card and toolbar item is permission-gated, and the UI hides what your role lacks rather than showing it disabled. Ask your network manager to compare your role with your colleague’s. What the stock Publisher and Advertiser roles include is listed in What your network controls and its advertiser counterpart. This also applies to dropdown options — see the next two questions.
Why is a targeting type missing from the “Add targeting” list?
Each targeting type is an individual permission (and pre-targeting types are separate permissions from targeting types). The list shows only the types your role is granted. See Add targeting.
Why is there no Subject column in the Frequency Capping card?
The column and its selector (cookie / server-side / IP…) appear only when the network has server-side capping storage enabled, IP (or last-external-source IP) capping enabled and your role holds the matching IP-subject permission, which no stock role does. Existing caps still work — you just cannot see or change their subject. See Set up frequency capping.
Why is the language / theme / interface selector missing from my user menu?
The user menu (your name, top right) always carries Color theme and Density. Display language appears only when the network allows users to change language, Open classic UI only when it allows interface switching — both are white-label options your network administrator sets — and User interface mode (Trees / Grids) only for a role that holds the User Interface Mode permission.
Entities and editing
Why did my banner get unlinked from placements after I changed its size?
Saving a banner re-checks all its links and silently removes those where it no longer fits the placement (exact size, unless the placement has Flexible placement size ticked — then any banner that fits inside it — or uses an Any-size unit). Saving a placement does the same for its linked banners, showing only a “Done” toast. Fix the size, then re-link on the Linked placements card. See the size check.
Why did switching a banner’s type wipe its settings?
Changing a saved banner’s Banner type and saving deletes the old type’s data: every save cleans the fields the new type does not use. Create a new banner for the new type when you may need the old content back, and see Banner types for the fields each type uses.
Why was my banner switched off and marked Pending after I edited it?
When your role is under the strict review mode (review is set per role, not per network, and the stock roles are not reviewed), editing a moderated field of an approved banner switches it off and returns it to Pending, and it cannot be switched on again until it is approved. After it is re-approved, switch it back on yourself — approval does not flip the switch. A reviewer’s Reject also switches the creative off. Your network manager knows whether your role is reviewed.
What do the Pending / Rejected badges on a banner mean — and why is there never an “Approved” badge?
The badges flag creatives needing attention when moderation applies. An approved banner shows no badge — no news is good news. Pending means a reviewer has not decided yet; Rejected means it was declined and switched off (the network can send the owner an e-mail with the reason). A brand-new creative under moderation starts as New and shows no badge until it is submitted for approval.
Where do I find an entity’s ID?
The ID is part of the edit page’s address — …/advertisers/9/campaigns/4/banners/1/edit is
banner 1. You can also show IDs beside names across the account: Account → Preferences →
User interface preferences → Show entities’ IDs. Support and API calls always want this
numeric ID, not the name.
What does the red “Not serving” pill on a banner or placement mean?
The entity has no links to the other side and its selection Rules are off — nothing can serve. Yellow Rules only means no direct links but Rules are on; gray Paused · N means the entity itself (or every one of its N linked entities) is turned off; green Serving · N means N linked entities are on. The pill reads links and switches only — not parents, targeting, capping, limits or the other side’s linking switch — and it is drawn only while the page’s own Linked card switch is on. Click it to jump to the linking card. See My ad is not serving.
If I move a banner to another campaign, do its statistics and budget move with it?
Move keeps the banner’s ID, and General reports attribute a banner’s rows to the campaign it is in now — so its whole history, impressions and spend included, shows under the new campaign and advertiser from the moment you move it. Limit counters do not follow: the old campaign’s budget counter keeps what was spent, the new campaign’s counter counts only what the banner delivers after the move. Copy creates a new banner with a new ID and no statistics. See Bulk banner operations.
Can an advertiser have a balance?
There is no prepaid wallet on an advertiser. A Total budget in the advertiser’s (or campaign’s) Limits card plays that role: delivery stops when spend reaches it, and the bar under the field shows what is left. See Set volume limits and budgets.
Serving behavior
Why is a banner still serving minutes after I switched it off?
A saved change normally reaches the ad servers within seconds, because saving publishes an update message. Anything that message misses waits for the next full rebuild of the ad servers’ snapshot, which on the default schedule runs every 10 minutes. Cached pages and CDN copies of a creative can extend the visible tail. If it still serves much later, ask Epom support or your account manager to check the ad servers.
Does frequency capping work for incognito / private-browsing visitors?
Cookie-based caps cannot recognize a returning incognito visitor (the cookie dies with the window), nor visitors on browsers that do not keep the cookie — Safari, Firefox, Brave, DuckDuckGo, iOS and Apple TV. When the request reports private browsing, caps with the cookie + server-side subject fall back to the server-side counter; plain cookie caps under-count for such traffic. Without cookies (apps, connected TV) the server-side counter belongs to the device advertising ID the request carries, or to an IP / user-agent fingerprint when there is none. See Set up frequency capping.
Why does a CPA campaign keep turning itself off?
A total cap (impressions, clicks, conversions or budget), a per-conversion-action total limit, or the CPA … Auto Deactivation pair (no conversions after both so many impressions and so many hours) switches the entity’s own Active switch off at the next hourly sweep — the switch being off is the feature, not a bug, and it stays off after you raise the cap. Raise or reset the limit, then switch it back on yourself. See Limits and Action limits.
Who can see why a DSP creative was blocked?
The DSP creative scan grid shows per-creative verdicts. Your network administrator has it; an account role gets it at Account → RTB only when the network administrator switches it on. Everyone else sees just the effect (the creative never wins). See creative policy protection.
Why does a deleted entity still show up in reports?
Statistics are history — deleting an entity stops future serving but keeps its recorded rows, still attributed to its name and ID. That is intentional; filter it out of the report if you don’t want to see it.
Tags and preview
Why is there no Preview button on my placement?
Native, application and click-through placements have no preview-capable tag type, so there is no Preview button — verify them through the API response instead. Site, mobile, non-standard, video and email placements do have one. On a demo installation a demo-account user sees the button on every type, but only Site, Native and Video placements open the demo page. See Tags and preview problems.
Why did a preview link I sent stop working?
Links from the preview page’s Copy / Open are signed and work for 30 days; after that they answer “Not found.” Open the preview again and send the new link. Links created before release 152 stopped working with it. See Tags and preview problems.
Why does my tag show nothing on an HTTPS page?
Most likely the tag was generated with the HTTP protocol option — browsers block mixed-content requests. In the Ad tags & API card’s Settings tab set Protocol to HTTPS (or Relative), copy the regenerated tag and replace it on the page. See Tags and preview problems.
Account and analytics
Where is my API key?
Account → Preferences → Change personal information, in the API key row. The key is
read-only; Generate creates a new key at once (no Save needed) and the old one stops working
immediately for every script that uses it. If the row is missing, your role lacks API Key
Access, which no stock role holds — your network administrator grants it. Send the key in the X-Api-Key
header (REST API).
How do I switch back to the legacy interface?
Open the user menu (your name, top right) and choose Open classic UI; the choice persists for your browser. It is available only when your network administrator allows interface switching. The Trees / Grids toggle in the same menu (User interface mode) is a different setting — it changes the view mode inside the current UI, not the UI generation.
Why did my demo account expire so fast?
The demo window (15 days by default) counts from account creation, not first login — sign up on Monday, first log in on Friday, and four days are already gone. When it runs out the account locks behind an overlay. See Demo accounts.
Why are my Conversions lower than the number of video events?
VAST playback and viewability events (quartiles, complete, viewable impression) are system conversions and no longer count in the Conversions column, nor in I2C or CCR; their money still counts in Net and Gross. Group the report by Conversion action or Attribution type to see them with real counts. See Analytics discrepancies and the metrics reference.
Why do my “today” numbers keep changing?
Reports are fed by periodic log flushes from the ad servers (every hour by default), so today is always provisional and yesterday can revise slightly upward until all logs land. For final numbers, report on completed days. See Analytics discrepancies.
Why do two users see different numbers in the same report?
Reports respect entity sharing (each user sees only their slice) and column permissions (revenue/profit columns can be hidden per role). Same definition, different scope. See Analytics discrepancies.
Which time zone do statistics use? Can I change it?
General reports, dashboards and widgets use the ad server’s reporting time zone — one zone for
the whole network, readable as reportingTimeZone from GET /rest-api/network/settings.do. It
cannot be changed per user or per account. Only the Advanced report has a Time zone
selector (fixed UTC offsets, UTC by default). Scheduled e-mails go out at an hour you pick in
UTC. Details:
Which time zone do reports use?
Why does the dashboard show yesterday’s spend but my Advanced report shows nothing?
Usually the two are looking at different days: the dashboard counts in the reporting time zone, the Advanced report in the zone you picked. Align them (pick the reporting time zone’s offset in the Advanced report) and the days match. Also check that the Advanced report’s dates are still within the few days the analytics cluster keeps.
Why can I only see a few days in an Advanced report?
Advanced reads the raw event logs, which the analytics cluster keeps for a short window only — set by Epom per network, two days by default. For a month or more use the General report.
Can I manage the account from my phone?
Yes, in the new interface — its layout adapts to phone screens (in portrait and landscape), and dialogs open as bottom sheets. Wide grids keep their columns and scroll sideways, so analytics and long tables are still easiest on a larger screen.
Can I get reports automatically — by e-mail, or into a chat or spreadsheet?
Yes. Schedule a saved report to arrive by e-mail, or pull it from a script with the analytics API and forward it wherever you like. See Automate reports.
For publishers
When and how am I paid?
Your network pays you, under the agreement you have with it: payment dates, minimum amounts and methods are the network’s terms, not product settings. The stock Publisher role has no payout history or payment-details card, so ask your network manager. What you earn is the Revenue column in your reports and on your dashboard — see Watching what it earns. It is what you are paid, unless your network adjusts the figures shown to you; if a statement differs, ask your network manager.
Why is my revenue below the advertised rate?
The advertised rate is what advertisers pay. Your Revenue is what the network pays you for the same impressions: a fixed price, or a revenue share — a percentage of the advertiser’s price — that the network sets on your site or placements. The difference is the network’s margin. Your eCPM is also an average over every impression, including lower-priced campaigns and house ads, so it is lower than the best rate on offer. Impressions for which the network has set no payout count at zero. If the figures do not match your agreement, send your network manager the site, the dates and the report.
What do I put in my ads.txt?
The lines your network gives you. The product does not create or host ads.txt or
app-ads.txt; the network knows its seller IDs and the ad systems it sells through. See
Privacy signals and ads.txt.
Which consent vendor do I add to my CMP?
Epom, IAB vendor ID 849, unless your network gave you another one. See Privacy signals and ads.txt.
For advertisers
Where is my spend?
In the Charges column: the Charges tile and column on the advertiser dashboard, and the Charges column in an Analytics report. There is no column called “spend”. See Run a report.
Why can’t I link my creative, set a frequency cap or get a conversion pixel?
The stock Advertiser role does not include them; your network manager does them for you or adds them to your role. See What your network controls.
”How do I…” — mapping other ad servers onto Epom
If you arrived from Google Ad Manager, Kevel, AdButler, Revive or similar, the same job usually exists in Epom under a different name. These answers map the common request onto Epom’s real feature and link to the page with the steps.
Getting started
What is an ad server, and do I also need a DSP?
Epom is the ad server: it stores your creatives, evaluates targeting, priority and caps on every request, picks the winner and logs the impression. A DSP is a bidder you plug in as an OpenRTB demand partner — its bids compete in the same auction as your direct campaigns, so the two are complementary, not either/or. See Ad server vs DSP.
How do I get from an empty account to a live ad?
Create an advertiser → campaign → banner on the demand side, a site → zone → placement on the supply side, link a banner to a placement, then copy the placement’s ad tag onto your page. See Quick start for a network.
What is the Epom equivalent of an “ad unit”?
An Epom placement — it carries the size and the ad tag and is the on-page slot that renders ads. A zone in Epom is only an organizational grouping under a site, not the slot itself (the opposite of AdButler/Broadstreet, where “zone” means the slot). See Create a placement and Zones.
What maps to a “line item” or “flight”?
The Epom campaign holds the buy: pricing type, dates, budgets, priority and targeting. Epom has no separate flight entity — the flight dates live on the campaign. See Create and edit a campaign.
Targeting
How do I geo-target a campaign?
Add a Country, Location or Browser Country rule on the entity’s Targeting card (custom country groups and world regions are options inside the Country list). Location resolves from the visitor’s IP down to Country → Region → City — there is no zip/postal-code, DMA or lat/long radius picker. See Add targeting and the targeting dimensions reference.
How do I target key-values or keywords passed in the ad tag?
Pass the parameter in the ad tag, then match it with the Custom Parameter dimension (Value / One of / Substring / free-text Expression) or the persisted Cookie Value variant. Both are demand-side only — they do not filter DSP/RTB bids. See Target on custom parameters.
How do I schedule a campaign or run it only on certain days/hours?
Set the campaign start/end dates for the flight, and add Day-of-week / Time-range dayparting rules for the hours. Dayparting can use the visitor’s local time. See Seasonal, geo and dayparting.
How do I stop objectionable ad categories from serving on my site?
Epom has no single global category blocklist. For programmatic demand, add blocked IAB
categories on the site’s OpenRTB integration card (sent to DSPs as bcat); for direct
demand, use category-matching Rules plus name-based pre-targeting blocks. See
Keep unwanted ad categories off your inventory.
How do I set up brand safety / avoidance lists?
There is no single “Brand Safety” screen — you assemble it from category-matching Rules, domain/app-package preset exclude lists, advertiser/campaign/banner name blocks, and campaign competitive separation. See Brand safety controls.
Delivery and pricing
CPM, CPC or CPA — which pricing model do I pick?
Set the pricing type on the campaign to match the goal: CPM (per 1,000 impressions) for reach, CPC for clicks, CPA for a tracked conversion. Prices can vary per country. See Pricing.
How do I cap how often one user sees an ad?
Add a frequency cap at advertiser, campaign, banner or placement level (the placement level and the IP subject need permissions your network administrator grants), counting impressions, and — on campaigns, banners and placements — clicks or conversions, with a per-user-cookie, server-side or IP subject. See Set up frequency capping.
How do I cap total impressions or spend (a budget cap)?
Use Limits — total, daily, weekly and monthly caps on impressions, clicks, conversions or budget per advertiser/campaign/banner/site/placement, with optional start/end dates and even pacing; which of them your role can set is up to your network manager. Per-conversion caps live on action limits. See Limits.
How do I control which campaign wins share-of-voice?
The network sets each campaign’s Priority tier, and only the top tier with something eligible competes. Within it Weight picks the campaign (weight 2 gets roughly twice the traffic of weight 1), then the banner weight picks a banner inside it; the CTR, I2C or eCPM optimizers can replace that draw. The Banners probability card on a placement shows the resulting split. See Optimize ad rotation.
Where do I set a floor price / minimum CPM?
For programmatic demand, per-country Bid floor cards on sites, placements and banners (an admin-only permission) set the minimum DSP bid you accept; the site CPM threshold is the last fallback for that floor. For direct campaigns the equivalent is Minimum margin on the placement or site Pricing card. Epom floors are static per country — there is no soft/dynamic/auto-optimized floor tier. See Pricing and CPM threshold.
First-price or second-price — what does the winner actually pay?
A price auction only happens for programmatic (OpenRTB) bids and PMP deals; direct campaigns are chosen by priority and weight, not by an auction. For programmatic bids, first price pays the bid; second price clears one cent above the runner-up or the floor, never above the bid; a fixed-price deal clears at its floor. See First-price vs second-price auctions.
Creatives
Which creative types can I run, and when do I use each?
Image (local/external), HTML Code, Native, Video, OpenRTB and Template banners — each serves on specific placement types. See the banner-type decision guide.
How do I traffic a third-party ad tag?
Paste it into an HTML Code banner; Epom expands its macros ($$RANDOM$$ cache-buster,
click and impression tokens) at serve time and serves the tag verbatim to the page. See
HTML and Template banners.
How do I serve an HTML5 zip creative?
There is no top-level “upload zip” type — an HTML5 creative goes through an HTML5 Template banner, built on a template your network prepares, whose ZIP is a template file property. See Serve an HTML5 creative from a ZIP bundle.
What are the size, file-type and file-size limits for creatives?
Image files are capped (default 200 KB, network-configurable) and uploaded videos at 20 MB (also network-configurable); an HTML5 ZIP is not held to the image cap but is inspected on unpacking (1,000 files, 20 MB per file, 50 MB in all); native assets have minimum-dimension and text-length caps. See the consolidated creative ad specs.
Reporting
How do I build a custom report?
Pick a report type, date range and time zone, choose group-by dimensions and metric columns, then apply filters and entity trees. See Run a report.
What does eCPM (or RPM) mean in my report?
eCPM is revenue per 1,000 impressions — Epom’s equivalent of RPM. There are three columns (Net, Gross, Profit), and the summary row is a blended eCPM recomputed from summed totals, not an average of row ratios. See CPM, eCPM and RPM explained.
What is fill rate, and why is mine low?
Fill rate is impressions ÷ requests. A low one routes to a concrete cause — no matching demand, a floor rejecting bids, or a missing passback — and the Requests column vanishes if you group by any demand dimension, which can make it look broken. See My fill rate is low.
How do I report on unfilled impressions?
On the General report use Requests and Fill Rate, grouped by supply-side dimensions only; on the Advanced report use the extended-view Direct requests, Returned requests, Filled requests and Fill rate, % columns. Watch Requests against Impressions for the gap. See the metrics reference.
Why don’t my numbers match another platform’s?
Time-zone bucketing, metric definitions (Requests vs Impressions, Net vs Gross), serve-time vs render/viewability counting, filtered traffic and ad-blocker asymmetry all shift the count; a sub-10% gap is normal. See Analytics discrepancies.
Conversions
Pixel or server-to-server postback — which should I use?
A browser pixel is easy but depends on the cookie surviving; server-to-server (postback with a click ID) is cookie-independent and recovers conversions lost to blockers and cross-device flows. See Pixels and S2S and the comparison in the conversions overview.
How long after a click or view does a conversion still count?
Each action carries a Post-click and a Post-view conversion window (a 0–255 value plus a period); a qualifying click always beats a view. See Conversion actions.
Programmatic
What is a Deal ID, and how does a PMP deal work in Epom?
A Deal ID is a string both you and the buyer reference; you record it on a campaign PMP deal row with a buyer seat, floor and auction type, and Epom sends it in the OpenRTB bid request. Epom does not mint the ID and has no programmatic-guaranteed type. See PMP private deals and PMP deals.
My deal isn’t delivering / gets no bids — what do I check?
Confirm the buyer seat first, then the Country rows vs your traffic (a private-auction deal sends no request for uncovered geos), the deal ID the DSP returns, the floor vs the bid, that OpenRTB banners exist on the campaign, and the creative-scan verdict. See My PMP deal is not delivering.
How do I connect an external DSP to bid on my inventory?
Add it as an OpenRTB demand partner in Admin → Demand partners (DSP) → DSP partners (or at Account → RTB for a role that holds DSP Partners) — URL, protocol version, timeout, max QPS, pricing model and user sync. See DSP partners.
Serving and tags
Why aren’t my ads showing?
Walk the decision tree: on/off switches up both trees, moderation state, links, sizes, targeting, capping, limits and network-level gates. If the tag renders nothing at all, it’s a tag problem, not a selection one. See My ad is not serving and Tags and preview problems.
Why does a third-party tag render blank even though the slot is set up?
Common causes are mixed-content (HTTP tag on an HTTPS page), a stale serving domain, an ad blocker, a hand-edited tag, or a script that refuses to render inside an iframe. See Tags and preview problems.
Why did my video ad fail to play?
Players swallow VAST errors silently. Reproduce with the placement’s VAST tag URL in a test player and check the Epom-specific causes — empty VAST when no banner matched, a third-party wrapper timing out, VPAID settings, or a media mime-type mismatch. See Diagnose video ad playback failures.
Clicks aren’t counting on my third-party tag — how do I fix it?
The Epom click-redirect macro must sit at the very start of the click destination, and
$$RANDOM$$ must be present so a cached iframe still logs a fresh impression. See
Fix click tracking on third-party tags.