paid media safety platform

Ad spend should have a
kill switch.

BidGuard sits between operators and ad spend. It watches for spend spikes, stale sync, brittle automation, and risky action requests before they become an unexplained budget leak.

No live writes un-approved Stale sync fails closed Full audit every step

live incidents

Anomalies surfaced with evidence, gated by approval.

active guard

Spend spike

approval gate

+38% guarded

CPA drift

evidence queued

2.4× guarded

Budget leak

guardrail armed

$4.8k guarded

Anomalies are surfaced with evidence, gated by approval, and leave an audit trail before any platform call is made.

100%Action proposals require explicit operator approval
0Live mutations without audit events
6Readiness gates before the first monitored action
2Platforms supported: Google Ads + Meta Ads

operator cockpit

Built for the operator, not the algorithm.

One view: connection health, readiness gates, bucket posture, live incidents, and approval queues. Nothing buried in a settings panel.

bidguard.astrounaut.com/dashboard/user
BidGuard
CockpitBucketsStrategiesApprovalsAudit
live

Surfaces

Operator cockpit
Strategy library
Evidence explorer
Notifications
Settings

Buckets

4

Connected

2/2

Sync health

Fresh

Pending approvals

1

Brand Keywords

guarded

Google Ads

Performance Max

monitoring

Google Ads

Meta Retargeting

guarded

Meta Ads

Cold Audiences

syncing

Meta Ads

The operator cockpit — connection health, bucket posture, and approvals in one surface.

operator lifecycle

Readiness is a route, not a badge.

A genuinely connected ship needs BidGuard to make each connector prove the exact stage it is in — and which next operator action unlocks the next one.

01

Operator sign-in

Identity is app access, not provider OAuth. WorkOS hosts the flow.

02

Connect provider

Google and Meta stay separate from user access. Each connection is independent.

03

Discover accounts

Visible ad accounts must be proven and listed before setup can continue.

04

Assign workspace

One workspace gets one explicit monitored account. No silent multi-account bleed.

05

Sync health

Read-only monitoring needs fresh data. Stale sync is a hard block, not a warning.

06

Review action

Live writes stay behind policy, approval, and audit. Nothing runs autonomously.

feature surface

Everything in the cockpit.

BidGuard is not a dashboard with optional safety. The non-negotiables are the product.

Budget guardrails

CPA Guard, ROAS Guard, Pacing Guard, and Circuit Breaker. Each one runs from evidence, not guesses.

Bucket posture board

Group ad accounts by strategy intent. See readiness, risk, and cap posture in one view.

Strategy library

Pre-built rule presets mapped to real operator intent: protect spend, scale carefully, notify and diagnose.

Approval queue

Every proposed action needs an explicit approval. Evidence packets show exactly why BidGuard wants to act.

Immutable audit ledger

Connector changes, rule edits, approvals, actions, and reverts all write a permanent audit event.

Operator cockpit

Unified view of connection health, pilot readiness, discovered accounts, and workspace status.

Live sync monitoring

Google and Meta OAuth sync is tracked separately. Stale data fails closed — it never pretends to be fresh.

In-app alert inbox

Spend anomalies, readiness blocks, and rule evaluations route to the alert inbox with retry state.

safety model

Safety is the product.

BidGuard is not a dashboard with optional safety. The non-negotiables are the product.

Read before write

Every account starts in read-only sync. Live mutations stay blocked until a sandbox proof path is established.

State, not badges

OAuth, discovery, assignment, sync, permissions, and action-readiness are separate states — not a single status badge.

Stale data fails closed

Approved actions refuse to run on stale data, missing capability, or unsupported provider methods.

Audit is the ledger

Every connector change, rule edit, approval, action, and revert writes an immutable audit event.

state-date closed loop

Stale data detected

Sync timestamp outside freshness window

fail-closed

Action proposed

Evidence packet written, approval queued

pending

Approval confirmed

Operator reviews evidence + approves

approved

Audit written

Immutable record before any provider call

audited

trust model

Know enough to be trusted.

Not creative generation. Not vague AI optimisation. BidGuard is overspend protection, policy control, operator reviews, and incident evidence.

Google Ads budget monitoring

Meta Ads guardrails

Campaign anomaly detection

Paid media audit trail

Connector health monitoring

Approval-gated action runner

connect only what can be explained

The alpha keeps provider mutations blocked until sandbox proof exists.

Operators can still see connection state, account assignment, evidence, and Buckets without pretending the system is done.