---
title: "Price an awareness campaign on CPM and cap exposures per person"
description: "The first stage of a brand flight — CPM pricing with per-country rows, and a frequency cap of 3 per day whose subject survives private browsing, with Flat to space exposures out and an advertiser-level cap across several campaigns."
type: "howto"
audience: [network-manager]
keywords: [awareness, branding, CPM, frequency cap, subject, server-side storage, incognito, flat, advertiser-level cap]
ui_path: "Account → Advertisers → advertiser → campaign → Frequency capping"
---

Fetch the complete documentation index at: https://epom.com/ad-server/docs/llms.txt. Use this file to discover all available pages before exploring further. Append .md to any documentation page URL to get its markdown version.

# Price an awareness campaign on CPM and cap exposures per person

## What it is and why

An awareness buy is an impression deal, so the campaign is priced on **CPM**; and because the brief
is "as many different people as possible, never bombard anyone", the first control after the price
is a **frequency cap** per person — with a subject that still counts the visitors whose browser
keeps no cookie. This is the first stage of [Run an awareness campaign with frequency control](https://epom.com/ad-server/docs/use-cases/branding-reach-frequency.md).

**Example.** Without a cap, 1,200,000 impressions on a news site can land 240,000 of them on the
same 20,000 readers who reload all morning. With **3 impressions per 1 day** and the subject *User
(cookie-based + server-side storage)*, each person meets the ad at most three times a day and the
rest of the volume reaches new people.

## Typical scenarios

| You want | Set | Where |
|---|---|---|
| At most **3 exposures per person per day**, including private-browsing and Safari visitors | Frequency capping · By impressions · Amount 3 · Period 1 Day(s) · Subject *User (cookie-based + server-side storage)* | the campaign |
| The same person **spaced out** — about one exposure every 8 hours rather than three in one session | the same row with **Flat** ticked (3 per day flat = blocked for `period ÷ amount`) | the campaign |
| **One cap across 3 campaigns** of the brand running at once, say 6 per week in total | an advertiser-level Frequency cap, Amount 6, Period 1 Week(s), on top of each campaign's own cap | the advertiser |

## Step by step

Both cards are on the campaign; the **Subject** column needs server-side capping storage on your network and a role that may pick an IP subject — otherwise every cap you can create is cookie-only.

1. **Price for impressions.** On the campaign's **Pricing** card pick **CPM** and set the Global
   row; add per-country rows if the deal prices markets differently
   ([Configure pricing](https://epom.com/ad-server/docs/guides/delivery/pricing.md)). Branding buys are impression deals — CPM
   also makes every report line directly comparable to the media plan.

2. **Cap exposures per person.** On the campaign, open **Frequency capping** and switch it on. The
   switch creates one empty row each for **By impressions**, **By clicks** and **By
   conversions**, at Amount 0, which restricts nothing. In the **By impressions** row set
   **Amount** to **3**, **Period** to **1** and **Period type** to **Day(s)** — click a cell,
   type, press Enter. Each edit saves on its own; there is no Save button on this card.
   (**Add** creates a second cap, for example "10 per week" on top of "3 per day".)

   ![Frequency capping card with a By impressions row set to 3 per 1 day](https://epom.com/docs-images/ad-server/branding-reach-frequency/branding-frequency-cap.webp)

   If the **Subject** column is shown, set the row to *User (cookie-based + server-side storage)*.
   Plain cookie caps stop working where the browser does not keep the cookie: private browsing,
   Safari, Firefox, Brave, DuckDuckGo and iOS devices. The mixed subject falls back to a
   server-side counter for exactly those visitors
   ([details](https://epom.com/ad-server/docs/guides/delivery/frequency-capping.md)). Tick **Flat** if the exposures should be
   spaced out: 3 per day flat means each impression blocks the visitor for `period ÷ amount` —
   about 8 hours — instead of all three back-to-back in one session. A flat row keeps no counter,
   only a "blocked until" time.

   If the brand runs **several campaigns at once** and the cap must hold across all of them, add
   an **advertiser-level** frequency cap too (the advertiser's card offers the Frequency kind
   only) — see the [capping matrix](https://epom.com/ad-server/docs/reference/capping-matrix.md).

## Caveats and exceptions

**Capping**

- **Cookie-only caps leak on private browsing.** With subject *User (cookie-based)*, an incognito
  visitor gets a fresh counter every session and can see the ad far more often than the cap says.
  Use the mixed subject. The **Subject** column appears only when your network has server-side
  capping storage on, IP capping (or L.E.S. IP capping) enabled, and your role may pick an IP
  subject, which no role can out of the box (ask your network administrator); where it is missing,
  new rows keep the default *User (cookie-based)* subject, while existing rows keep whatever
  subject they were created with, and the ad server still honours it.
- **Switching the card off deletes the caps; counters are per visitor.** Turning **Frequency
  capping** off deletes the cap rows, and turning it back on creates fresh empty ones at Amount 0.
  Counters already sitting in visitors' cookies or in the server-side store are not cleared by
  any of this — they expire on their own schedule.
- **Changes take up to 10 minutes.** Changing an Amount reaches the ad server only with its next
  full rebuild (every 10 minutes), so raising a cap from 3 to 5 does not help a visitor already
  at 3 until then.
- The **Flat** checkbox spreads *the cap*, not the budget. For budget pacing use **Even pacing**
  on the Limits card — the two are independent.

The caveats that apply to the whole flight — the roles — are on [Run an awareness campaign with frequency control](https://epom.com/ad-server/docs/use-cases/branding-reach-frequency.md#caveats-and-exceptions).

## Not working?

A visitor sees the ad far more often than the cap says? The likely causes:

| Symptom | Likely cause | Check |
|---|---|---|
| One visitor reports seeing the ad 10 times in a day | Subject is *User (cookie-based)* and the visitor is in private browsing / Safari / Firefox / Brave / iOS | Campaign → Frequency capping → **Subject** column; if the column is missing, server-side storage is off or the role cannot pick an IP subject |
| The cap row exists but nothing is restricted | Amount is still 0 (the state right after switching the card on) | Campaign → Frequency capping → **Amount** |
| Raised the cap from 3 to 5, visitors at 3 are still blocked | The ad server picks the change up at its next full rebuild (every 10 minutes) | Wait 10 minutes |
| All three exposures arrive in one session | **Flat** is off | Campaign → Frequency capping → **Flat** |
| The cap vanished | The card was switched off (deletes the rows) and on again (fresh rows at 0) | Campaign → Frequency capping |

The other stages of the flight are on [Run an awareness campaign with frequency control](https://epom.com/ad-server/docs/use-cases/branding-reach-frequency.md#not-working).

## Reference

Every subject, period and kind of cap: [Set up frequency capping](https://epom.com/ad-server/docs/guides/delivery/frequency-capping.md) and the
[Capping matrix](https://epom.com/ad-server/docs/reference/capping-matrix.md); the price: [Configure pricing](https://epom.com/ad-server/docs/guides/delivery/pricing.md).

## Related

- [Run an awareness campaign with frequency control](https://epom.com/ad-server/docs/use-cases/branding-reach-frequency.md)
- [Split a brand flight by geo and device and hold the share of voice](https://epom.com/ad-server/docs/use-cases/branding-reach-frequency-targeting-and-share-of-voice.md)
- [Pace a brand flight, collect viewability and read reach](https://epom.com/ad-server/docs/use-cases/branding-reach-frequency-pacing-and-measurement.md)
- [Set up frequency capping](https://epom.com/ad-server/docs/guides/delivery/frequency-capping.md)
- [Capping matrix](https://epom.com/ad-server/docs/reference/capping-matrix.md)
- [Configure pricing](https://epom.com/ad-server/docs/guides/delivery/pricing.md)