Skip to main content
The Ad Agent needs two things to work: your ad accounts connected so it can read spend, and the tracking pixel installed so it can compare that spend against real site behaviour. This page covers the ad account side, including Meta’s custom audience terms. Everything here lives under Agents → Advertising in app.dash.fi. The Configure tab is always available, even before setup is finished.

The setup flow

Setup runs in four steps. You can leave and come back — progress is saved, and Configure is where you finish anything outstanding.
1

Add your landing pages

Add every URL your ads point to — your homepage, product pages, and any dedicated landing pages. The agent only audits traffic to pages it knows about.
2

Connect ad accounts

One-click OAuth with read-only access. The agent starts scanning historical spend as soon as you connect.
3

Install tracking pixel

Add the pixel to each landing page via Google Tag Manager, Shopify, or raw HTML. See Install pixel.
4

Verify pixel install

Dash.fi pings each landing page to confirm the pixel is firing. Events usually register within two to three minutes, but can take up to 24 hours on cached or low-traffic sites.

Connect an ad account

  1. Go to Agents → Advertising → Configure
  2. Open Websites & Accounts
  3. Find the landing page you want to cover and click Connect
  4. Sign in to Meta or Google and approve read-only access
  5. Pick the ad account to connect when you’re returned to Dash.fi
Accounts are connected per landing page, so one list shows you which sites are covered and by which ad accounts.
Connect with a user who has access to the ad account in question. Read-only access to Dash.fi is enough for reporting, but Meta permission checks fail for a user who isn’t on the ad account — see Still showing TOS pending.

Accept Meta’s custom audience terms

Meta ad accounts need one extra step. To exclude invalid traffic from your campaigns, Dash.fi builds a Meta custom audience — and Meta requires you to accept its Custom Audience Terms of Service before any account can use one. Until you do, the account shows TOS pending in Configure, or a prompt reading “Accept the custom audience terms to start excluding traffic” during setup. The agent still audits your spend, but exclusions can’t be applied.
1

Open the terms link in Dash.fi

Click the TOS pending link next to the account. It opens Meta’s terms page for that specific ad account.
2

Accept the terms on Meta

Review and accept. This happens on Meta, not in Dash.fi.
3

Come back and click Re-check

Return to Dash.fi and click Re-check next to the account. Dash.fi asks Meta whether the terms are now accepted and updates the status.
The status doesn’t update on its own. Dash.fi stores the result of the last check rather than asking Meta continuously, so an account you’ve just accepted terms for keeps showing TOS pending until you click Re-check. Reloading the page won’t clear it.
Custom audience terms apply to Meta only. Google ad accounts have no equivalent step.

Still showing TOS pending

If the status hasn’t changed after accepting, work through these in order. If it still shows pending after all three, ask support to check it against Meta directly — they can see how Meta is answering for your account.

Traffic exclusions

Once terms are accepted, the agent can proactively block invalid traffic sources — bots, click farms, and competitor clicks — before they spend your budget, rather than only reporting them after the fact. Go to Agents → Advertising → Exclusions to see every campaign with an exclusion applied, along with the savings each one is accruing. Everything on the view covers a fixed Last 30 days window, shown as a label where other views have a timeframe selector. There’s no timeframe to change here. Exclusions work on both Meta and Google campaigns. Only the Meta side depends on the custom audience terms.

Reading the savings figures

Each campaign shows a monthly savings figure. How that figure was produced depends on how much of the 30-day window the campaign actually ran:
  • Full window — the campaign has 30 days of data, and the figure is its measured savings for the month.
  • Extrapolated — the campaign ran for only part of the window, so Dash.fi scales its savings up to a monthly rate. An info icon next to the figure tells you how many days of data it’s based on.
  • Ended campaigns — a finished campaign has no monthly rate to project, so the row shows what invalid traffic actually cost it instead, labelled invalid traffic cost rather than projected savings. An info icon states the number of days the figure covers.

Toggling a campaign’s exclusion

Each campaign has a toggle: turning it off disables that campaign’s exclusion and stops it accruing savings. Toggling a Meta campaign asks you to confirm first. Changing the audience on a Meta campaign can send its ad sets back into the learning phase, and while Meta relearns, delivery and cost per result are usually less stable for a few days. Cancel and the toggle reverts; confirm and the change is applied. Google toggles apply immediately — Google’s learning period belongs to Smart Bidding, and a negative audience change doesn’t reset it.

Negative audience warnings

A warning icon next to a campaign’s toggle means the negative audience behind its exclusion isn’t fully in effect:
  • Undersized audience — the audience hasn’t reached the minimum size the ad platform requires. You can still enable exclusions, but they won’t take effect until the audience is big enough.
  • Unavailable audience — on Google, the negative audience list has been closed in Google Ads; on Meta, the platform is reporting an unrecognized status for the audience. Either way, exclusions may not be taking effect for that campaign.

Manage connected accounts

Agents → Advertising → Configure → Websites & Accounts lists every landing page with the ad accounts auditing it. From here you can connect another account, accept outstanding terms, re-check a status, or remove an account with the trash icon. Removing an account stops the agent auditing that account’s spend. Your existing findings and claims aren’t deleted.

Where to find everything

Overview, Exclusions, and Credits stay empty until setup is finished and traffic is flowing. Configure is always available.

FAQ

Click Re-check next to the account in Configure → Websites & Accounts. Dash.fi stores the result of its last check rather than polling Meta, so the status stays as it was until you re-check. If it still shows pending afterwards, see Still showing TOS pending — the usual causes are accepting on a different ad account, or the connected Meta user not having access to the one you’re accepting for.
Yes. Meta ties custom audience terms to each ad account individually, so accepting for one doesn’t carry over. Each connected Meta account shows its own TOS pending status until you accept for that account and re-check.
Partly. Auditing, invalid traffic detection, and credit recovery all run without them. Only exclusions need the terms — without them the agent can report invalid traffic but can’t block it before it spends your budget.
Read-only. The agent reads spend and campaign data to audit it. The one thing it writes is the custom audience used for exclusions, which is why Meta asks you to accept its terms first.
Overview, Exclusions, and Credits need setup finished and traffic flowing. Confirm the pixel is installed and verified on each landing page, then give it time — pixel events usually register within two to three minutes but can take up to 24 hours on cached or low-traffic sites.