Campaign Builder
No campaign 0 accounts Reach unchecked

Campaign

Name it so it reads unambiguously in a report six months from now. Everything downstream inherits these values.

Campaign name —

Budget and flight

DSP

Audience

Load the client's target list. The tool resolves every row to a domain, because domain is the only key that joins across your DSP, your data vendor and their analytics.

Drop the target list CSV here

or ·

Suppression

Load the exclusion list, then cross-check it against the target list. A domain sitting on both is a live error — you would be paying to reach an account the client told you to exclude.

Drop the suppression CSV here

or ·

Not handled here: hashed CRM email lists and the client's own office IP ranges. Both are suppression too, and both are loaded directly in your DSP rather than as an account list. Neither should ever pass through this tool — hashed email files belong only in the onboarding platform that consumes them.

Reach check

Works the arithmetic backwards from budget to per-account frequency. This is the check that catches an over-funded narrow audience before you launch it, rather than in week three.

Set a budget, CPM and flight dates in Campaign, and resolve an account list in Audience.

Creative & UTMs

Pick the sizes you have creative for, add the landing pages, and the tool builds one click URL per combination using your DSP's macro tokens.

Banner sizes

Landing pages

One per line. Include the protocol. Existing query strings are preserved.

Creative names

Optional. One per line — each name is paired with every size. Leave blank to use the DSP's creative-name macro.

Export

Everything ready to upload. Files are generated in your browser and named against the campaign.

What this does not produce: ad tags, line item structure, or bid settings. Those are built in the DSP and the ad server. This tool covers the parts that are file work — steps 02, 04 and 07 of the launch sequence.

DSP profiles

Macro tokens differ between platforms and between seats. Verify each against your DSP's current documentation, correct it here, and the change is remembered on this browser.