Skip to content

Tutorials

Budget & Pacing

How CPM billing, daily and total budgets, pacing and Smart Boost work in AdManta, with examples of how delivery is spread over the day.

View as Markdown
Set a budget and pacingVideo coming soon

CPM billing

CPM stands for Cost per Mille – the price per 1,000 impressions. For budget campaigns, costs are deducted proportionally on each impression.

Cost per impression

cost = cpm ÷ 1000

Total spend

spend = impressions × (cpm ÷ 1000)

Example: CPM = €2.50, 10,000 impressions

10,000 × (2.50 ÷ 1000) = €25.00

The CPM value is stored with up to 4 decimal places to accurately represent very low prices (e.g. €0.0025).

Pacing scenarios

Pacing distributes the budget evenly over the campaign's run time. Without pacing, ads are served as fast as possible until the budget is exhausted.

Scenario Pacing Smart Boost Result
No pacing Off Off Maximum delivery until budget exhausted. Budget may run out early.
Standard pacing On Off Budget spread evenly over run time. Consistent delivery throughout the day.
Smart Boost pacing On On When CTR is high, delivery is automatically increased. Good performance is rewarded.

Hourly budget target (pacing formula)

hourly_target = remaining_budget ÷ remaining_hours

Remaining hours = hours until end date (or until 23:59 today if no end date is set).

Smart Boost

Smart Boost automatically increases the delivery rate when a campaign has an above-average CTR – so high-performing ads get more reach.

Parameters

  • Boost percent: How much the hourly budget may be exceeded (e.g. 150% = 1.5× target allowed)
  • Min. CTR: CTR threshold (in %) above which the boost activates

Logic

  • CTR ≥ Min. CTR → Boost active, up to Boost-% more budget per hour
  • CTR < Min. CTR → Standard pacing, no extra budget

Smart Boost does not increase the total budget. It can only deplete it faster if CTR remains consistently high.

Redis caching of budget data

To perform budget checks quickly on every ad request, current spend totals are cached in Redis. This minimises database queries.

Cache key Content TTL
camp_spend_{id} Current total spend for the campaign 5 min.
camp_daily_{id}_{date} Spend for the current day Until midnight

The cache lag of up to 5 minutes can cause the budget to be slightly exceeded. This is intentional to maximise performance.

Budget warning levels

The campaign dashboard displays warning levels when budget is running low:

Budget usage < 80 %: Normal

Budget usage 80–95 %: Warning – budget running low

Budget usage ≥ 95 %: Critical – campaign ending soon