Connects to Meta and Google Ads
Ad optimisation that asks before it acts
Brava watches the Google Ads and Meta accounts you already run, and tells you when something needs a decision — in plain words, with the figures behind it. You decide. Nothing in your advertising changes until you approve it.
Nothing in your account is changed without your approval.
- between checks, by default
- 4h
- checks in the catalogue
- 56
- changes made without you
- 0
Pause “Summer promo — broad match”
It has spent $340 over the last 7 days and produced no sales. At the $45 cost per customer you set, that money should have brought in about 7 orders.
- Spent, 7 days
- $340.00
- Sales
- 0
- Your target
- $45.00
Why this exists
Running your own advertising means four problems nobody sells you a fix for
The dashboard has too many numbers
Every platform reports dozens of fields and none of them says which one is the problem. You are left guessing at which figure matters this week.
Nobody tells you when to act
There is no signal for when a budget should go up, or when an ad group has stopped earning its keep. By the time it is obvious, it has been true for a fortnight.
Ads spend around the clock; you do not
Money leaves the account at three in the morning and at the weekend. Finding out on Monday that Saturday went nowhere is finding out too late to do anything about it.
Two platforms, two dashboards, no single view
Running Google Ads and Meta at the same time means switching between them and holding the comparison in your head.
How it works
Four steps, and you are the third one
Connect an account you already run
Sign in with Google Ads or Meta and pick which of your ad accounts we may look at. We check straight away whether the login you used can actually make changes, and say so if it cannot.
We read the last 90 days, then check every four hours
Spending, results, and whether anything has quietly stopped working. Four hours is the default and you can change it. Sudden spend spikes and account problems are checked every thirty minutes instead, because a four-hour gap is too long for those.
You get a short list, in plain words
Each suggestion says what it would change, why, and the figures it is reading — “spent $340 over seven days with no sales, against your $45 target”. No platform jargon without an explanation attached.
You approve, and only then does anything move
Approving is what calls the platform. Everything applied is written to a change log with the value before and after, and can be undone from that log.
Scope
Exactly what it can change, and what it can only tell you
The catalogue behind the product holds 56 checks. Twenty are live today. Of those, only the four below result in a change to your account — and each one only after you have approved that specific change.
Changes it can make, once you approve
- Daily budget
- Raised on a campaign beating your target and spending its whole budget; lowered on one running well over.
- Target cost per customer
- Moved when what you are paying has settled somewhere other than the target you set.
- Pause, or resume
- A campaign, ad set or ad that is spending with nothing to show. Pausing is the most severe thing this software can do.
- Delivery schedule
- Narrowed to the hours and days you said you wanted, when a campaign is set to run outside them. On Meta only — the Google connection refuses this one.
Nothing is ever deleted. There is no delete in this product — not for campaigns, not for ad groups, not for ads. Pausing is as far as it goes.
Things it reports and never touches
- No sales tracking set up, or tracking that has broken since it was
- The page an ad points at is down
- Spending suddenly spiked, or cost per customer fell off a cliff
- Payment failed, or the ad account was suspended or restricted
- The platform connection stopped working
Anything applied can be undone. Every change is written to a log with the value before and after it, and undone from there within its window. Seven days later we compare the week before the change with the week after — labelled as the estimate it is, because a seven-day window cannot separate your change from a holiday or a competitor.
How the advice is produced
The maths is code. The language model only writes it up.
This is the division we consider most important in the product, so it is worth stating rather than implying.
Ordinary code decides
Every threshold, every statistical test, every trend, and the value a budget or target would move to. It is deterministic, it is unit-tested, and the same account on the same day produces the same answer twice.
The model rewrites, and nothing else
It turns that result into a sentence you can read. Then every figure in what it wrote is checked back against the figures the code produced; if one appears that the code did not calculate, the rewrite is discarded and the plain template is used instead.
Your limits
Set once, and checked before a suggestion is even written
Not at the moment a change is applied — a suggestion that would cross one of your limits is never shown to you at all. These are the defaults; each is yours to change, and you can add spend ceilings, advertising hours, and campaigns that are never to be touched.
- How often we check
- Every 4 hours to start
- Most we may move a budget at once
- 20%
- Most we may move a target at once
- 15%
- Suggestions per day, at most
- 10
- Left alone after a change
- 24 hours
- Before a judgement is trusted
- 100 impressions, 7 days
- A suggestion expires after
- 72 hours
- Who may approve
- The account owner, by default
Platforms
Two you can connect today, two we are honest about
Meta
Available now
The ad accounts behind your Facebook and Instagram advertising.
Google Ads
Available now
The Google Ads accounts you already run, read through the official API.
TikTok
Not available yet
Described in the capability table; the connection is not built yet.
LinkedIn
Not available yet
Described in the capability table; the connection is not built yet.
Data and permissions
Permissions and what we do with your data
What Brava does with your Google data
Signing in with Google
We ask only for your name, email address and Google account identifier, so we know who you are and can keep you signed in. Signing in touches no advertising data, and you can use the product without it.
Connecting a Google Ads account
Separately, and only when you choose to connect an account, we ask for Google Ads access (“manage your AdWords campaigns”). We use it to read your campaign structure and daily performance figures, and to apply the changes you approve. Google publishes no read-only version of this scope, so the same permission covers both; what keeps it narrow is the product, not the permission.
What we will ever change
Three things on Google Ads: pause or resume, daily budget, and target cost per acquisition — each only after you have approved that specific change. (A fourth, the delivery schedule, applies to Meta only.) We never delete a campaign, ad group or ad. The most severe action the software can take is pausing something.
Brava’s use and transfer of information received from Google APIs adheres to the Google API Services User Data Policy, including its Limited Use requirements. The privacy policy sets out what we keep, for how long, and how to have it removed.
The same rule applies to Meta
Brava works the same way with Meta advertising accounts: we read your campaigns and their results, and change nothing you have not approved.
Questions
Frequently asked questions
If one of these is the reason you have not connected an account yet, the answer is meant to settle it either way.
Connect one account and see what it finds
Connecting takes about a minute, and the first pass runs straight away. Whatever it comes back with is a list to read, not a change to your account.