An AI media buyer that audits your account every night, shows its work, and can't touch anything outside the limits you set.
30 tokens per run. No subscription, no per-seat fee, and no percentage of your ad spend.
You approve every change · Guardrails enforced on every run · Disconnect anytime
The problem it solves
Small Google Ads accounts don't fail dramatically. They leak. A keyword that stopped converting three weeks ago keeps drawing budget. A campaign that used to work still holds the biggest share of spend. An ad that never beat its siblings is still in rotation. Fixing that needs somebody to open the account and read it properly — every week, not every quarter — and that is exactly the job that gets postponed.
SOSPosting does the reading. It won't replace a good media buyer on strategy, and it doesn't claim to. What it reliably does is show up nightly, look at every campaign, ad group, keyword and ad, and hand you a short list of specific changes with the numbers behind them — so the decision takes a minute instead of an afternoon.
How the nightly review works
Snapshot the account
Every night SOSPosting pulls a bounded snapshot of your account through the official Google Ads API: campaigns, ad groups, keywords and ads, with their performance over the last 30 days.
Audit it with AI
The AI reads that snapshot the way a media buyer would — where the money actually goes, what converts, which keywords take budget and give nothing back, which ads trail the rest of their ad group.
Write concrete proposals
Not a report you still have to act on. A list of specific changes — this budget from X to Y, pause this keyword, add this negative, replace this ad — each with its before and after values and the reason behind it.
Re-check every change against your guardrails
Server-side. The model is told your limits up front, but we never trust that: each proposal is validated again against your caps before it can be applied, or even shown as approvable. Anything outside them is marked rejected, with the reason.
You approve — or it applies inside the limits
By default every change waits for your tap, in the dashboard or as approve/reject buttons in Telegram. Switch auto-apply on and guardrail-passing changes go live on their own. Either way, everything applied lands in the audit log.
Nightly runs are opt-in per business — each run spends tokens, so we never switch them on for you. They go out overnight (around 03:00 server time). You can also press Run now whenever you want a fresh read: a manual run only ever proposes, it never auto-applies, even if auto-apply is enabled.
What a proposal looks like
Every change arrives as a row you can act on in one tap — what it targets, the exact before and after, why, and which guardrail it was checked against.
- Before
- €12.00 / day
- After
- €9.60 / day
Why: this campaign takes the largest share of account spend and has the account's highest cost per conversion over the last 30 days. Trimming it frees budget for the ad groups that are converting.
Guardrail: −20% — at your per-run limit, allowed.
The changes it can propose
- Raise or lower a campaign's daily budget
- Pause a campaign — or re-enable one
- Add a negative keyword (broad, phrase or exact)
- Adjust a keyword's max CPC bid
- Pause a keyword that spends without converting
- Add a keyword to an ad group
- Pause an ad that trails its ad group
- Write a new responsive search ad — 3–15 headlines up to 30 characters, 2–4 descriptions up to 90
Proposals that fail a guardrail aren't hidden from you — they're shown as rejected, with the limit they hit. That's often the useful signal: if the AI keeps trying to push a budget past your ceiling, it may be telling you something about the ceiling.
Guardrails: the part that actually matters
Handing an AI write access to a live ad account is only reasonable if it physically cannot do the thing you're afraid of. That's what guardrails are for. You set them once, per business, and they are re-checked on our server, after the model has spoken — the AI is told your limits, but it is never trusted to respect them. A change that violates a cap is rejected regardless of how it was justified.
Approval required — the default
Auto-apply is off until you deliberately turn it on. Until then every proposal sits and waits for you, however confident the AI is.
Max daily budget
A ceiling no single campaign's daily budget may be set above, no matter what the data says.
Minimum daily budget
A floor a campaign can't be cut below — so an aggressive night can't quietly starve something that matters to you.
Max move per run
How far a budget or a bid may travel in one run, as a percentage of its current value. Defaults to ±20%.
Daily spend ceiling
A second, harder line on top of the max daily budget: no single campaign's daily budget may be raised above it. A proposal that crosses it is rejected before it reaches you.
Pausing is off until you allow it
Campaign pausing is blocked by default — that whole class of change is impossible until you explicitly opt in to it.
On top of the caps, two things are always true: every applied change is written to an audit log with the run it came from and whether it was approved or auto-applied, and disconnecting the account stops everything immediately.
What you need to connect
- A Google Ads account you can sign into, and its customer ID. Manager (MCC) or direct — either is fine.
- One Google sign-in. We connect through the official Google Ads API: no password sharing, no browser automation, no scraping. Credentials are stored encrypted and never reach the browser.
- Your guardrail settings. Take two minutes over the caps before the first run — they're the whole safety model. Only the per-run move limit comes pre-set (±20%); the budget floor, the ceiling and the daily spend cap start empty, which means unlimited until you fill them in. Set them before the first run.
- Optional: Telegram. Connect it and proposals arrive as approve / reject buttons on your phone.
- Nothing else. You don't need to connect a single social platform to use ads optimisation — though if you do, your paid and organic publishing end up in one place.
Building a campaign from scratch
The same connection powers the campaign builder. Give it your landing page URL and a short description of what you sell, and it drafts a Search campaign end to end — name, daily budget, bidding, keyword set, and responsive search ads within Google's limits (3–15 headlines of up to 30 characters, 2–4 descriptions of up to 90). Performance Max is supported too when you supply the images.
You review and edit every field before anything is created, and campaigns are created paused by default — nothing spends until you deliberately enable it. A generated draft costs 30 tokens, the same as an optimisation run.
What it costs
- 30 tokens per optimisation run — nightly or manual, same price.
- 30 tokens for an AI-built campaign draft, spec generation included.
- Token packs from €10, VAT included. Tokens don't expire, and new accounts start with free tokens to try it.
- No subscription, no per-seat fee, and no percentage of ad spend — the thing most ad-management tools charge on. Your bill doesn't grow because your spend did.
- If a balance is below the cost of a run, that night's run is skipped rather than done halfway.
Full breakdown on the pricing page. The same wallet pays for publishing, AI captions and blog articles, and businesses under one account share it.
Frequently asked questions
Will SOSPosting change my Google Ads without asking?
No — not unless you ask it to. Auto-apply is off by default, so every proposed change waits for your approval in the dashboard or Telegram. If you do switch auto-apply on, it only ever applies changes that passed your guardrails, and each one is written to the audit log.
What exactly can it change?
Campaign daily budgets, campaign pause and enable, negative keywords, keyword max-CPC bids, pausing keywords, adding keywords to an ad group, pausing weak ads, and writing new responsive search ads. Budget and pause/enable proposals make sense across campaign types; keyword and ad-level proposals apply to Search campaigns, which are the ones that have keywords and text ads.
What is a guardrail, and where is it actually enforced?
A guardrail is a hard limit you set: maximum and minimum daily budget, the maximum percentage a budget or bid may move in one run (±20% by default), a daily spend ceiling no campaign's budget may be raised above, and whether campaign pausing is allowed at all — it is blocked until you opt in. Only the ±20% per-run limit is pre-set; the budget floor, ceiling and spend cap start empty, which means unlimited, so set them before your first run. They are enforced on our server, after the AI has proposed. The model is told the limits, but its output is re-validated against them independently — a violating change is rejected regardless of what the model claims.
How often does it run?
Nightly runs are opt-in, because each run costs tokens — you turn them on per business, and they go out overnight (around 03:00 server time). You can also press Run now whenever you like. A manual run only ever proposes: it never auto-applies, even if auto-apply is enabled.
What does it cost?
30 tokens per optimisation run, whether it was nightly or triggered by hand. Tokens are pay-as-you-go, packs start at €10 with VAT included, and they don't expire. There is no subscription, no per-seat fee, and no percentage of your ad spend. If a business's balance is below the cost of a run, that night's run is skipped rather than half-done.
Is there a minimum ad spend, or a contract?
No. There's no minimum spend, no retainer and no term. A single small Search campaign is a perfectly valid thing to point it at, and you can disconnect the Google Ads account at any time, which stops all runs immediately.
How do you connect to my account — is it safe?
You sign in with Google and pick the Ads account; we connect through the official Google Ads API. There is no password sharing, no browser automation and no scraping. Credentials are stored encrypted and are never exposed to the browser, and disconnecting from the dashboard revokes the connection.
Can it build a campaign from scratch, not just tune one?
Yes. Give it your landing page URL and a short description of what you sell, and it drafts a Search campaign — name, daily budget, bidding, keywords and responsive search ads. You review and edit everything first, and campaigns are created paused by default, so nothing spends until you enable it. That draft costs 30 tokens.
Do I have to use the rest of SOSPosting?
No. Google Ads optimisation stands on its own — you can connect an Ads account without connecting a single social platform. It just happens to live next to the publishing and AI-caption tools, so your paid and organic work sit in one place.
Start with a read-only look
The honest way to try this is to connect the account, leave auto-apply off, and press Run now once. You'll get a list of proposals and the reasoning behind them, and you can apply none of it. That costs 30 tokens and tells you more about the tool than any claim on this page.
Also worth a look: how SOSPosting compares with other social tools, the developer API, and the platforms it publishes to.