Skip to content
PubTrust — a ClearTrust product · cleartrust.ccAd quality and malvertising protection for publishers

Company

Ad quality glossary

The vocabulary of this category is a mixture of standards-body jargon, browser internals and criminal tradecraft, and a lot of it is used loosely. These are the definitions we use, written to be useful rather than authoritative.

adomain (advertiser domain)The ad stack

The advertiser's domain as declared in an OpenRTB bid response, in bid.adomain or Prebid's meta.advertiserDomains. It is a claim, not evidence. It is entirely self-declared by the bidder with no verification step anywhere in OpenRTB; Prebid's adapter specification requires bidders to accept the field "even if that endpoint doesn't currently respond with that value", so it is frequently absent; and it arrives unnormalised (ford.com, www.ford.com, https://ford.com/), which means it must be folded to eTLD+1 through the Public Suffix List before any comparison. The gap between the declared domain and the domain actually observed in a creative's behaviour is a measurable, useful quantity.

In detail on How It Works

Ad Review CenterThe ad stack

The Google Ad Manager interface where publishers review and block individual creatives that have served on their inventory. Retrospective by design, which is why capturing responseIdentifier in real time is worth doing.

In detail on How It Works

Ad slotThe ad stack

The container element on a page into which an ad is rendered. The unit publishers count, price and sell — and the unit ad-quality enforcement operates on.

Aho-Corasick automatonThe controls

A string-matching structure that finds all occurrences of a large set of terms in a single pass over the text. Why keyword count in an ad-quality corpus costs bundle size rather than runtime: matching twelve thousand terms takes the same single pass as matching twelve.

AI slopThe threats

Mass-produced generative creative with no editorial or production investment behind it. Detectable by artefacts of machine generation rather than by the subject matter — a pack that fires on the phrase "artificial intelligence" would block a large share of entirely legitimate technology advertising.

In detail on Protection Packs

Allowlist / blocklistThe controls

An allowlist exempts a specific advertiser, creative or rule from a policy; a blocklist adds one. The speed with which a publisher can allowlist from a violation row is, in practice, the thing that determines whether they trust a blocking vendor at all.

Auto-redirect (forced navigation)The threats

A creative that navigates the reader's browser away from the publisher's page without any click, usually to a scam or scareware destination. The signature malvertising attack, and the one publishers lose the most sleep over, because the reader blames the publisher. Worth knowing: window.location and window.top are non-configurable in browsers, so they cannot be intercepted by redefinition — any vendor claim to "override location" is false as stated. The reachable laundering paths are window.open, programmatic a.click(), form.submit() and history.pushState, and the only mechanism that genuinely prevents top-level navigation is the iframe sandbox attribute without allow-top-navigation.

In detail on How It Works

Begin-to-renderThe ad stack

The measurement standard by which an impression is counted when the creative begins to render in the browser, rather than when the ad server responds. Google Ad Manager counts this way, and it is the reason pre-render blocking is economically neutral: block before render and no impression was counted, so no revenue was earned and none was lost.

In detail on How It Works

bid.admThe ad stack

The winning bid's creative markup, present as a plain string in page JavaScript before the creative renders. Operationally the single most valuable client-side signal available in ad quality: it can be scanned for text, links, image sources and script hosts regardless of whether the creative is later rendered into a friendly iframe or a SafeFrame, which means it sidesteps the cross-origin problem entirely for the header-bidding demand path.

In detail on How It Works

Binary-fuse filterThe controls

A compact probabilistic set structure giving constant-time membership tests with a small false-positive rate and no false negatives. Used for domain lookups, with every hit confirmed against an exact list — so the false-positive rate is a performance cost, never a correctness one.

Block-and-refill vs neutralise-and-monetiseThe controls

Two philosophies. Block-and-refill stops the creative and paints a fallback: simple to reason about, forfeits the impression. Neutralise-and-monetise lets the creative display while disabling the harmful behaviour: keeps the revenue, but relies on having correctly identified and disabled every harmful path. PubTrust does block-and-refill by default because a publisher can reason about it, with the alternative available per policy.

Brand safety vs ad suitability vs ad qualityStandards and regulation

Brand safety is an advertiser-side concern: not appearing next to content that damages the brand. Ad suitability is the same concern expressed as a spectrum rather than a binary. Ad quality is the publisher-side mirror of both: controlling which advertisements are acceptable on your own inventory, and stopping the ones that attack your readers.

cattaxStandards and regulation

The OpenRTB field declaring which taxonomy a category array uses. It defaults to 1, and taxonomy 1 is deprecated for lacking Sensitive Category Designation flags — so a bare cat: [...] with no cattax is legally Content Taxonomy 1.0, not the current version. A parser that assumes the current taxonomy silently corrupts category data, which is a common and invisible bug.

In detail on Protection Packs

ChumboxThe threats

The grid of low-quality content-recommendation creatives that appears at the foot of many articles, named for the bait scattered to attract fish. Characterised by disbelief constructions ("you won't believe what she looks like now"), disgust-marketing imagery, and arbitrage economics. A brand-quality problem rather than a security one, but a significant one for premium inventory.

In detail on Protection Packs

Click macro / click URL unwrappingThe ad stack

Ad servers prefix the real destination onto a tracking URL using macros such as %%CLICK_URL_UNESC%%, so the landing page often sits unencoded at the tail of the href; the escaped variants nest it as a percent-encoded query parameter. Both are recoverable client-side with no network call, which means the landing domain can be judged before anyone clicks.

In detail on How It Works

CloakingThe threats

Showing different content to the detection system than to the reader. In creatives it commonly takes the form of hidden text — a payload in display:none elements that a naive text scrape reads and a human never sees — or of a landing page that serves benign content to datacentre IP ranges and the real scam to residential ones. A practical detection signal: compare innerText (what the reader sees) with textContent (which includes hidden nodes) and treat a sharp divergence as evidence in itself.

In detail on How It Works

CreativeThe ad stack

The actual advertisement: markup, images, video, scripts. What a policy is evaluated against, as distinct from the campaign or the advertiser.

Creative IDThe ad stack

The ad server's identifier for a specific creative. Useful for blocking because it is stable across impressions, but not universally present and not consistent between systems.

Cross-origin iframeThe ad stack

An iframe loading content from another origin. Its document is unreadable from the parent page by browser security design — contentDocument returns null. What remains observable: the src, the name attribute (GPT and SafeFrame encode creative metadata there), the sandbox flags, the geometry, and the network requests the frame's contents generate.

In detail on How It Works

Direct-soldThe ad stack

Inventory sold by the publisher's own sales team rather than programmatically. Relevant because it usually carries no bid metadata at all, so it must be caught by DOM inspection and runtime behaviour rather than pre-render bid signals.

DSA (Digital Services Act)Standards and regulation

EU regulation whose advertising provisions require that recipients can identify, for each advertisement, that it is an advertisement, on whose behalf it is presented and who paid for it — with additional repository obligations for very large platforms. It makes a per-creative record of advertiser, payer and category an operational requirement rather than a nice-to-have.

In detail on Global Coverage

eTLD+1 / Public Suffix ListThe controls

The registrable portion of a domain — example.co.uk rather than ads.example.co.uk — derived from Mozilla's Public Suffix List. Necessary for comparing advertiser domains, which arrive unnormalised and with inconsistent subdomains.

Fail-openThe controls

Allowing an ad to render unjudged when a decision cannot be reached in time. Necessary — a hold that never releases is a revenue outage — but it must be time-capped and counted. PubTrust caps the inert-park hold at 5,000 ms and reports the fail-open rate in the dashboard.

In detail on How It Works

Fake UIThe threats

A creative that imitates operating-system, browser or page chrome to steal a click: a fake download button, a fake close button that is not a close button, a fake play button over a non-existent video, a cursor arrow painted into the image, a fake progress bar. Hard to detect by keyword because bare download, play, close and next are the legitimate call-to-action on real ads and on the publisher's own furniture — the signal is in the full sentences only a fake UI writes, plus the behavioural evidence of what the click does.

In detail on Protection Packs

Fallback creativeThe ad stack

The stand-in painted into a slot after a violating creative is blocked. Usually a house ad, a promotion or a plain colour block. Painting one at the exact slot dimensions is what keeps a block from leaving a visible hole in the page.

In detail on How It Works

Friendly iframeThe ad stack

A same-origin iframe, typically written by the ad server with document.write. Its contentDocument is readable from the parent page, so a creative inside one can be inspected directly — though note that a MutationObserver does not cross a document boundary, so inspecting it properly requires a second observer inside the creative document, and a one-shot read at render time systematically under-reads.

In detail on How It Works

GARMStandards and regulation

The Global Alliance for Responsible Media, a WFA initiative that produced the Brand Safety Floor and Suitability Framework. Discontinued in August 2024, and following the WFA/X settlement in July 2026 the WFA stated it will not form or restart GARM or a similar initiative. Its categories survive inside IAB Content Taxonomy 3.1. Vendors still marketing "GARM compliance" are claiming conformance to a body that no longer exists.

In detail on Protection Packs

GDPR IP truncationStandards and regulation

Storing a partial IP address — conventionally IPv4 to /24 and IPv6 to /48 — so that the value retained is not a full network identifier of an individual device. Preserves geographic and network analysis, which is what ad-quality forensics actually need, while materially reducing the personal-data footprint of a third-party script.

In detail on Security & Privacy

GlüStV (Glücksspielstaatsvertrag)Standards and regulation

The German interstate treaty governing gambling. The 2021 version created a licensed online market supervised by the GGL with heavy obligations — the OASIS self-exclusion register, a €1,000 monthly deposit limit, a €1 slot stake cap, the five-second rule between spins. Its significance for ad quality is second-order: those constraints generated a grey-market vocabulary built entirely on evading them, which is now the highest-value detection signal in German.

In detail on Global Coverage

GPT (Google Publisher Tag) / googletagThe ad stack

Google's publisher-side ad library for Ad Manager. Exposes slotRequested, slotResponseReceived and slotRenderEnded events plus getResponseInformation(), which together are the main non-Prebid pre-render signal available to an ad-quality tag.

In detail on How It Works

Header biddingThe ad stack

Running an auction among multiple demand sources in the page, before the publisher's ad server is called, so that ad server can be given a real competing price. Usually implemented with Prebid.js.

In detail on How It Works

Heavy ad interventionStandards and regulation

Chrome's mechanism for unloading ads that consume disproportionate CPU or network resources. Relevant because attributing long tasks to individual ad slots lets a publisher find the creative damaging their Interaction to Next Paint before the browser makes the decision for them.

In detail on How It Works

IAB Ad Product Taxonomy 2.0Standards and regulation

The IAB Tech Lab taxonomy that classifies advertisements (as opposed to page content), signalled as cattax = 8. The correct primary mapping for ad-quality reporting. Nodes relevant here include 1361 Gambling (with children for Casinos, Lottery and Sports Betting), 1448 Non-Fiat Currency → Cryptocurrency Exchanges, 1001 Adult Products and Services, 1291 Dieting and Weightloss, 1544 Tobacco, 1049 Cannabis, 1474 Politics and 1002 Alcohol.

In detail on Protection Packs

IAB Content Taxonomy 3.1Standards and regulation

The taxonomy that classifies page content, signalled as cattax = 9. Contains the Sensitive Topics branch, which is where the former GARM Brand Safety Floor categories now live in versioned, machine-readable, maintained form.

In detail on Protection Packs

Inert-parkThe controls

Holding creative markup as text inside nested inert parsing contexts — <template><xmp>…</xmp></template> — so that no script executes, no image loads and no request fires, reaching a verdict, and only then writing it into the slot or discarding it. The difference between suppression after execution and never executed, which for a malware creative is the whole difference: a hidden iframe still runs its payload.

In detail on How It Works

IVT (invalid traffic)Standards and regulation

Traffic that should not be counted as a real human ad view — bots, data-centre traffic, automated browsers. A different problem from ad quality: IVT is about whether the audience is real, ad quality is about whether the creative is acceptable. Vendors in the two spaces are frequently confused with each other.

MalvertisingThe threats

Advertising used as a delivery vehicle for an attack on the reader — a forced redirect to a scam page, a drive-by download, a phishing lure, or a fake system alert. It is distinct from merely unwanted advertising: a gambling ad on a family site is a brand-safety problem, while a creative that navigates the reader's browser to a scareware page without a click is an attack. The two are usually sold together because the same tag catches both, but they fail differently — a missed gambling ad is an awkward email, a missed malvertising creative is an incident.

In detail on How It Works

Monitor modeThe controls

An enforcement state in which violations are detected, recorded and reported but nothing is blocked. The correct default for a new site, because it lets a publisher calibrate against their own inventory before any revenue is at stake.

In detail in the install guide

MRC (Media Rating Council)Standards and regulation

The US body that accredits measurement methodologies. Worth knowing for scope: the MRC's Brand Safety Ad Verification Supplement contains no occurrence of "malvertising", "malicious", "malware" or "creative". There is no MRC or IAB detection standard for malicious creative. That cuts both ways — there is no seal to point at, and no incumbent definition to be measured against.

OpenRTBThe ad stack

The IAB Tech Lab specification defining the real-time bidding protocol — the shape of bid requests and responses that most programmatic advertising travels over.

Pop-under / pop-up abuseThe threats

A creative that opens a new window or tab, usually behind the current one so the reader does not notice until later. Legitimate window.open is user-gesture-initiated; abusive window.open is not, which is the distinction a runtime layer enforces.

In detail on How It Works

Prebid.jsThe ad stack

The dominant open-source header-bidding library. Relevant to ad quality because it exposes bid-level events (bidResponse, bidWon) carrying advertiser domains, bidder, CPM and creative identifiers — and because it exposes the creative markup itself.

In detail on How It Works

Prebid RTD module (Real-Time Data module)The ad stack

A Prebid.js extension point that lets a vendor participate in the auction and render path. The way an ad-quality vendor gets inside the render decision rather than reacting to it afterwards. Only a handful of vendors in this category ship one.

In detail in the install guide

Pre-bid vs post-bidThe controls

Pre-bid blocking acts before the auction or before the creative renders, using bid metadata and creative markup — nothing is earned, so nothing is lost. Post-bid blocking acts after the creative has rendered, usually by hiding or removing it — the impression was counted and paid, but the creative's code has already executed. Pre-bid is better for both revenue and security; post-bid is the only option where no pre-render signal exists, such as direct-sold inventory.

Redirect chainThe ad stack

The sequence of HTTP redirects between a click and the final landing page, frequently used to launder a malicious destination behind reputable-looking intermediaries. Following it is impossible from a browser and must be done server-side.

In detail on How It Works

responseIdentifierThe ad stack

A value GPT exposes on slotRenderEnded that identifies the specific ad response. Google documents it as usable to block that exact ad in Ad Manager's Ad Review Center. Its practical significance is that capturing it turns a catch on the page into a permanent, one-click block upstream in the publisher's own ad server — the Ad Review Center is otherwise retrospective and gated behind an impression threshold.

In detail on How It Works

SafeFrameThe ad stack

An IAB-specified cross-origin iframe container that isolates a creative from the publisher's page while giving it a narrow, mediated API for things like expansion. Good for page security; it also means the creative's document is unreadable by publisher-side JavaScript, which is why pre-render bid-markup scanning matters so much.

In detail on How It Works

sandbox attributeThe ad stack

An iframe attribute that restricts what the framed content may do. Omitting allow-top-navigation makes it structurally impossible for the creative to navigate the parent page. The only mechanism that genuinely blocks forced navigation, as opposed to detecting it after the fact.

In detail on How It Works

ScarewareThe threats

A creative imitating a security warning — "your device is infected", a fake virus-scan progress bar, a fake system dialog — to push a download or a payment. Detection is difficult by keyword alone because security vendors advertise legitimately using the same nouns; the reliable signal is the second-person alert construction, not the vocabulary.

In detail on Protection Packs

Self-exclusion registers (OASIS, SPELPAUS, ROFUS)Standards and regulation

National registers through which a person can bar themselves from licensed gambling — Germany's OASIS, Sweden's SPELPAUS, Denmark's ROFUS. Licensed operators must check them. Grey-market operators advertise on not checking them, which is why phrases like casino utan spelpaus, casino uden ROFUS and ohne OASIS are among the most conclusive gambling signals in any language.

In detail on Global Coverage

SSP / DSPThe ad stack

Supply-side platform (sells publisher inventory) and demand-side platform (buys on behalf of advertisers). The two ends of the programmatic pipe a creative travels down.

Tech-support scamThe threats

A creative or landing page presenting a fake support number or remote-access prompt, typically impersonating an operating-system vendor. Frequently paired with a scareware creative.

Verdict cacheThe controls

A precomputed lookup table of creativeId / adomain → verdict, shipped with the policy bundle so that a creative already condemned anywhere in the network is blocked instantly, with no network round trip at decision time. This is how real-time ad blocking is actually fast; live analysis is the fallback for creatives nobody has seen before, not the primary mechanism.

In detail on How It Works