Skip to content

Ads ​

The Ads page (/ads) is the control center for your paid campaigns. It always opens on the Performance table. A sub-navigation bar gives access to the other tabs.

The tabs ​

TabAddressWhat you do there
Performance/adsRead the real numbers of every campaign, ad set and ad, and spot wasted budget
Library/ads?adsTab=bibliothequeSee what is about to go live, what is running and what stopped, with the recipe of every creative
Engine/ads/arbitrageCreate and follow arbitration rules (budget, cuts, resupply). See the Engine page
Journal/ads/historiqueEverything that happened to your ads: engine, launches, imports, actions in the app, API calls, syncs

Tools reserved for the DURUM team

Five more tabs appear after a "DURUM" separator, for the DURUM team only: Home (/ads?adsTab=home), Angles (/ads?adsTab=angles), Campaigns (/ads/campagnes), Score (/ads?adsTab=score) and Legacy engine (/ads/moteur). A link or bookmark to one of them simply brings you back to the Performance table, with no access-denied screen. They are described at the bottom of this page.


Performance tab ​

The top cards ​

Five cards summarize the selected period: Spend, Revenue (sold), ROI (sold), CAC and Rev. / Client. Each card has a tooltip explaining its calculation (for example "Sold ROI = attributed sales at their declared value, divided by ad spend. 1x = profitable"). The cards are customizable: hide them, reorder them or add others from the metrics catalog, exactly as on the Overview.

Sold and collected never add up

"Revenue (sold)" counts attributed sales at the value of a sale declared in Settings > Conversions. Cash actually collected shows in "Collected" and "ROI (collected)". They are two readings of the same result, not two amounts to sum.

The ads-attributed funnel ​

Below the cards: Leads, Applications, Bookings, Sales and Unique clients (since the start of the account, all periods). Stages with no data on the account are hidden automatically. Bookings are counted per unique person: the same person who rebooks (follow-up, reschedule) counts as 1.

Spend by campaign ​

A stacked chart shows spend per campaign over the period, with a "Show trend" button.

The "Campaigns, detailed performance" table ​

The table is a tree: click a campaign to see its ad sets, then an ad set to see its ads. The first two columns stay pinned on the left while you scroll. The native columns:

ColumnCalculation
Campaign (then ad set, then ad)Name, network and status
SpendAd spend (Meta, Google and others)
Leads / CPLAttributed leads; CPL = spend ÷ leads
Apps / CPAPPAttributed applications; CPAPP = spend ÷ applications
Book. / CPBBookings (unique people); CPB = spend ÷ bookings
SalesAttributed sales
Revenue (sold)Sales × declared value of a sale
ROI (sold)Attributed revenue ÷ spend
CPASpend ÷ sales
No-Show / CancelMissed and cancelled meetings (shown only when the account has meetings)
VerdictAutomatic classification of the row (see below)

Columns of a stage the account does not have (for example Apps when there is no application) do not appear.

Simple or Multi-touch ​

Two chips above the table, Simple and Multi-touch, show or hide three columns: Discovery, Closing and Assisted, the split of revenue between the ads that touched the contact. They change no other number. The attribution model used by these columns is set in Settings > Attribution, not here.

The "Columns" button ​

The Columns button opens the column manager:

  • Table columns: hide or show each native column, move it up or down, reset.
  • Add a column, Metric tab: a metric from the catalog, grouped as Base, Funnel, Meta, Revenue and Others (Spend, Leads, CPL, Applications, Bookings, Meetings, Meetings held, Cost per held booking, Sales, Revenue (sold), ROI (sold), Collected, ROI (collected), CPA, CPC, CPM, CTR, Frequency, Impressions, Reach, Clicks, % Leads to book, % Leads to close, % Autobook, Cost per autobook).
  • Formula tab: a calculated column "Metric A, operator, Metric B" (plus, minus, times, divided by), with its format (amount, number, percentage, ratio) and an optional name.
  • Display tab: the display format.

Conversion columns ​

Every conversion defined in your account (Settings > Conversions) can become a column, per campaign and per ad. Only the conversions you created are offered, never the raw catalog of detected events. Clicking a cell opens the list of contacts behind the number ("N contact(s) over the period").

The verdict ​

The Verdict column classifies every campaign, ad set and ad with the same rule, in this order:

VerdictCondition
NewLess than 50 (account currency) spent
ScaleROI of at least 3 and closing rate of at least 20%
MaintainROI of at least 1.5
Weak leadsROI between 0 and 1.5 and show rate below 50%
Weak conversionROI between 0 and 1.5 and closing rate below 15%
PauseROI below 1, no sale, more than 3 meetings
InvestigateROI below 1 (other cases)
MaintainEverything else

ROI = attributed revenue ÷ spend. Closing rate = sales ÷ meetings held. Show rate = meetings held ÷ meetings booked.

INFO

The verdict is a quick read, not a decision. The Engine is what cuts or moves budget (paid tier), with its verdict gate and guard rails.

Ad status and pause ​

Every ad carries its Active or Paused dot (status read from Meta) and its visual preview. Management roles (owner, admin, agency, media buyer) can activate or pause a Meta ad directly from the table; the change is written to Meta and confirmed by a message ("… paused on Meta"). The write is re-checked server side.

Cell drilldown ​

Click a leads, applications, bookings, sales or revenue number to open the list of events attributed to that row:

Detail columnContent
DateEvent date
Name / EmailThe contact (clickable)
ProductProduct concerned
CampaignSource campaign
AmountFor sales and revenue
RepThe assigned rep
StatusBadges Closed, Booked, No-show, Cancelled, and "Recorded call available"

Follow-ups of the same person are deduplicated ("N unique people"); a person who booked several times shows "booked N×". The list loads page by page as you scroll. The detail is unavailable while a Rep or Product filter is active: remove the filter to explore the contacts.

Naming convention ​

The table shows ad names in full (the complete name is available even when truncated), because the naming convention puts the discriminating information at the end of the name:

CodeMeaningExample
TXCopy variantT1 = first copy, T2 = second copy
IXVisual variantI1 = first visual, I2 = second visual
VersionIteration of the same adv2, v3

An ad named … T1-I3 uses the first copy with the third visual.

Non-acquisition ​

A campaign may not be there to sell (recruiting, HR, employer brand). Its leads and meetings leave the account's CPL, cost per meeting and closing rate. The Non-acquisition block, under the table, shows their numbers in their own base. A campaign is classified in Settings > Segments. The block does not appear when the account has no non-acquisition campaign.


Ad waste ​

The "Ads to watch, wasted budget" section lists ads that spend without passing the next funnel stage, with a cascading rule based on 2 times the account's average cost over the period:

Reason shownCondition
No applicationSpend of at least 2 × the average cost per application, and 0 application
No bookingThe ad has applications (or the account does not measure them), spend of at least 2 × the average cost per booking, and 0 booking
No saleThe ad has bookings (or the account does not measure them), spend of at least 2 × the average cost per sale, and 0 sale

Each card shows the full ad name, the reason and the amount spent. The first six are shown, sorted by spend descending; "Show all N ads" expands the rest.

INFO

An ad flagged here is not cut automatically. If you want the cut to be automatic, that is the job of an Engine rule (paid tier).


Ad attribution ​

The numbers on this page use full attribution: they do not change with the attribution model (the model only serves the Multi-touch columns). Every event is tied to the ID of the ad that produced it, then to its real campaign and real ad set. The utm_content parameter of your links carries that ID; DURUM.ai resolves it to the ad, even if the ad was renamed.

An ad that converted but no longer spends (evergreen, cut ad) still appears in the table, with a spend of 0, so that the campaign cell always matches its drilldown.

Reliable attribution

For attribution to work, your ads must pass UTM parameters. If sales appear without being attributed to an ad, contact your account manager to check the setup.


Library tab ​

The Library shows what is coming, what is running and what stopped, with the recipe of every creative and its real performance as measured by DURUM.ai.

Two sub-tabs ​

Sub-tabContent
To publishWhat is about to go out: ads created or imported, not yet live. Up next zone: the publishing queue, grouped by destination campaign (otherwise "to place"), from best potential to lowest, unscored ads last
PublishedWhat already went out. Live zone: creatives active on the networks, sorted by real cost per lead, with the account's median CPL. Bank zone: paused, finished or never served, grouped by campaign

A Success rate card sits next to the zones: the share of ads published by DURUM.ai that beat the account (cost per conversion at 80% or less of the account's over the same window, with at least 3 conversions; ads under 20 of spend do not count).

Two views: List or Thumbnails. Clicking an ad opens its full detail: full-size visual, all the text (hook, headline, primary text, body, call to action), the recipe (angle, funnel, audience, product), the target campaign or the origin, and all its Meta deliveries (every linked ad ID, multi ad sets, identical copies).

You can tick ads or a whole campaign and Remove from the library: the ad stays on Meta, it leaves this view and the import does not bring it back. The Removed filter lets you see them again and restore them.

The potential score ​

Every waiting ad carries its potential score (0 to 100), given once when it enters the library and never presented as measured performance. Clicking the badge opens "Why this score". The full mechanism is described on the Potential score page.

The creative inventory ​

Under the zones, the account's full inventory ("N creatives · real DURUM performance"):

ControlOptions
ActionsImport all my ads (Meta), + One ad, Bulk import, Enrich from Meta
FilterAll, Active, Dead, Pending
ViewFolders (campaigns → ad sets → ads, with an account overview: leads, spend, CPL, sales, campaigns) or List
Group byNone, funnel, structure, campaign
Sort byCPL (best first), Conversions, Most recent
SearchText, angle, name

Every creative shows its recipe: copy structure (PAS, AIDA, BAB, listicle, etc.), angle, funnel (VSL, lead magnet, webinar, application, other), visual sub-style (UGC photo, talking head, testimonial, carousel, etc.) and its blocks (hook, problem, solution, proof, offer, CTA). Meta data and DURUM data are told apart by a tooltip ("Real DURUM data" or "Meta data (not DURUM)").

A Drafts to validate section lists generated ads waiting for your approval before entering the queue.


Engine tab ​

The Engine tab (/ads/arbitrage) is the unified arbitration engine: a rule = a scope, an arbitration KPI with its guard rails, a budget and its split, ad cuts. Everything is described on the Engine page.

Journal tab ​

The Journal tab (/ads/historique) gathers everything that happened to your ads, in one place: cuts, budgets and ad sets paused by the engine, launches, imports, scoring, your actions in the app, API calls and syncs. Every engine action that is still reversible carries its Undo button. Details are on the Engine page, Journal section.


DURUM team tools ​

These tabs are visible to the DURUM team only. They are described here so you know what your account manager does.

ToolRole
HomeA three-step guide: prepare your creatives (queued), build the campaign (ready to publish), let the engine optimize (pending decisions)
AnglesCoverage of angles, hooks and formats tested and untested on the account; generation of suggestions (new angle, hook variant, format test, copy refresh, gap fill) with ready-to-use copy, queued, in test, then results. The analysis uses AI credits billed on usage
CampaignsThe only place to build and launch a campaign: pulls the ready ads from the Library, full parameters, multi-network
ScoreThe calibration of the potential score: per score bucket, the share of winners, the share of failures, the median ratio of the ad's cost per conversion over the account's, at 30 and 90 days. An internal learning tool
Legacy engineThe rules engine from before the unification, still active while its rules are migrated. See Engine, Legacy engine section

Powered by DURUM.ai: ad attribution and operational intelligence