clickTag and exits
Catch missing, malformed, or platform-hostile clickTag setup before the ZIP leaves your machine.
Ad-Preflight runs locally, validates your creative, detects compliance, packaging, clickTag, asset, and performance-risk issues, and exports an upload-ready ZIP before you send it to ad-ops or the client.
Global install is best when you move between many creative folders. Use npx or a pinned dev dependency when your CI needs strict version control.
$ npm i -g @ad-preflight/cli
# one command, available in every ad folder
$ ad-preflight validate ./campaign
PASS 300x250/index.html
FIXED missing ad.size meta
WARN external HTTP asset
READY upload-ready.zip
Local
No creative upload
CI/CD
JSON + exit codes
Workflow
Ad-Preflight fits the way creative developers already work: terminal first, editor friendly, and ready for build pipelines when teams need repeatable checks.
Build one creative or a folder full of sizes.
Run Ad-Preflight from the terminal.
Fix common issues locally.
Export an upload-ready ZIP for handoff.
Checks
Catch missing, malformed, or platform-hostile clickTag setup before the ZIP leaves your machine.
Validate file types, asset references, ad.size metadata, and ZIP contents against common upload rules.
Repair common packaging problems and produce an upload-ready ZIP without sending files to a hosted service.
Use JSON output and exit codes so broken creatives fail fast in CI instead of coming back from QA.
CI/CD
Run the CLI in GitHub Actions, agency build scripts, or release checks. JSON output and exit codes make it easy to fail builds and surface issues in logs or pull requests.
- run: npm ci
- run: npx @ad-preflight/cli validate ./ads --json
- run: npx @ad-preflight/cli package ./ads --out dist/ads.zipComing soon
The --deep plugin brings runtime validation to the CLI: JavaScript errors, long tasks, CPU-heavy code, network behavior, and visual checks — all before the creative reaches QA.
Local by design
Deeper checks without uploading creative files.
Runs locally, like the rest of Ad-Preflight, so you can inspect more runtime behavior without a creative ever leaving your machine.