Beta signups are open
Run Apple Ads on autopilot, 24 hours a day, inside your limits.
Every day, Capdoux tunes negative keywords, bids, budget allocation and target CPA inside the limits you set. It starts in shadow mode and only records what it would have done.
Connect with read-only access and start by reviewing proposals
Limits and cooldowns that work from day one
- Maximum bid change per day
- ±20%
- Cooldown before a bid changes again
- 72hours
- Hands off anything a person changed
- 7days
- Wait for attribution before judging impact
- 3days
The manual routine
Let Capdoux handle your morning search term review
Doing it by hand
- Open the search terms report and add irrelevant terms as negatives
- Move winning terms to Exact match and nudge bids a little at a time
- No record of why a change was made, so you can't tell later whether it worked
With Capdoux
- Every morning, it reviews yesterday's search terms and drafts changes
- Every proposed change is checked against your guardrails before it is applied
- After a change is applied, it measures the impact and reverts what made things worse
What it does
You decide how much to hand off
Moves only inside your limits
Bid changes of up to ±20% a day, a cap on total daily budget, minimum and maximum bids, and terms that must never become negatives. You set each one per app; new apps start narrower, at ±10% a day for bids.
Watch first
Right after you connect, every action runs in shadow mode. Nothing is written to Apple Ads. Capdoux records what it would have done.
Approve, then apply
For each action (negatives, promotions, bids, keyword pauses, new keyword tests, budgets and target CPA), choose log-only, approval-required or automatic. Approval requests that get no answer are discarded after 24 hours.
Reverts what backfires
Bids and budgets are judged on 7 days of results; negatives, promotions and keyword pauses on 14 days; and target CPA on 14 days after a 14-day learning period. The verdict comes 3 days later, once Apple's attribution is final, and Capdoux automatically creates a rollback for any change that falls short.
Every reason on record
Each change stores its before and after values, the reasoning, and the version of the policy applied. Owners and admins on your team can view the full audit log.
Guardrail check
Try the guardrails yourself
How a proposed bid change is handled depends on the daily change limit and the minimum and maximum bids. Move the slider to find the point where the verdict flips.
A +15% change is within the ±20% daily limit. If this action is set to automatic, it is applied as is.
In this example, the change from $1.20 to $1.38 (+15%) is within the ±20% limit, so it is applied automatically. A change of more than +20% waits for approval, and anything above the $1.60 maximum bid is rejected.
An illustrative example. The ±20% limit and the minimum and maximum bids are values chosen for this example; you set them per app. New apps start at ±10% a day.
You set the rules. Automation keeps them with the same precision, every single day.
Getting started
Three steps to your first proposals
- 1
Connect with an API user
Set up an Apple Ads user with API access and register the public key shown on screen. The private key is generated on our servers and never passes through your hands.
- 2
Review proposals in shadow mode
Capdoux imports the last 90 days of data and diagnoses your campaign structure. After that, proposed changes and the reasons behind them arrive every morning.
- 3
Choose what to hand off
Once you trust the proposals for an action, switch it to approval-required or automatic. You can stop everything at any time, and proposals keep being recorded while it is stopped.
Daily flow
What happens every morning
Once you are connected, Capdoux runs these steps in this order every morning. At any stage, the kill switch stops all writes.
Sync yesterday's data
Imports search terms, keywords, bids and spend from Apple Ads. Settings a person changed in Apple Ads are detected here and left alone by automation for 7 days.
Classify search term intent
Sorts new search terms into brand, competitor, category, generic or irrelevant. Runs on your own Anthropic API key.
Draft changes
Drafts changes such as negatives, promotions, bids and daily budgets, each with the reasoning behind it.
Check against your guardrails
Rule-based code checks change size, cooldowns, minimum and maximum bids, and protected terms. Changes that would push total daily budget over the cap are rejected here.
Apply, or queue for approval
Actions set to automatic are applied to Apple Ads. Actions that need approval, and changes over the limits, wait for approval. Actions in shadow mode are only recorded.
Judge the impact after the window
Once each action's evaluation window has passed, Capdoux waits 3 days for attribution to settle, then decides. If a change falls short, Capdoux creates a change that reverts it.
Safety by design
Easy to stop. Easy to explain.
Capdoux moves your ad spend automatically, so two things come first: you can always stop it, and you can always explain what it did. Guardrail checks run in fixed, rule-based code and are never left to an LLM.
Kill switch
Stop writes for a whole tenant or for a single ad account.
Respects manual changes
Keywords and settings a person changed are left alone by automation for 7 days.
Waits after each change
A bid is not changed again for 72 hours, and a target CPA for 14 days to allow for the learning period.
Protected terms never become negatives
Your brand name and terms on your protected list never become negatives, even when they meet the criteria.
Stops itself on repeated errors
After 5 Apple Ads API errors in a row, writes to that account stop.
Encrypted credentials
Private keys are encrypted with a key unique to each connection and never appear in logs or in LLM input.
Changes that backfire get reverted
For a bid increase, Capdoux judges 7 days of results, then waits 3 days for Apple's attribution to settle before it decides. If it is highly likely that the cost per additional new download is 25% or more above the target CPA, it creates a change that restores the previous value.
- Change applied
- Evaluation window: 7 days
- Attribution wait: 3 days
- Verdict and rollback
An illustrative example. The numbers are not real campaign results. Rollbacks still respect the kill switch, approval requirements, and minimum and maximum bids.
Features
Multiple apps, each with its own rules
Search term intent classification
Sorts new search terms into brand, competitor, category, generic or irrelevant. It runs on your Anthropic API key, and you can correct any label in the dashboard.
- PennyNoteBrand
- MoneyLog budgetCompetitor
- budget appCategory
- how to save moneyGeneric
- free wallpaperIrrelevant
Policies per app
Even when one ad account promotes several apps, each app gets its own target CPA, brand terms, competitor terms and guardrails.
Run it from your AI assistant
Add
https://app.capdoux.com/mcpas a custom connector in your AI assistant and connect with OAuth. It is read-only by default. Writes, apart from a few such as pausing, run only after you confirm a preview of each change. Deleting a tenant, transferring ownership, disconnecting Apple Ads, and approving or rejecting changes are confirmed in the dashboard. Permissions and tenant isolation work the same as in the dashboard.Approve in the dashboard
Approve or reject pending changes with the before and after values and the reasoning in front of you. Manual rollbacks start here too.
Bid · “keyword planner” Pending approvalBefore$0.90 After$1.00Bids on this app are set to approval-required
Reject ApproveAudit log
Every change is stored with its before and after values, the reasoning, and the version of the policy applied. Owners and admins on your team can view every entry.
- 07:12 Negative keyword “free wallpaper” addedReason: irrelevant intent (confidence 0.94) v12
- 07:12 Bid “budget app” $1.20 → $1.38Reason: P(CPA ≤ target) = 0.81 v12
- 07:13 Negative keyword “photo editor” sent for approvalReason: irrelevant intent, but 3 new downloads v12
- 09:41 Negative keyword approved and appliedApproved by: admin v12
The screens in these tiles are illustrations. Search terms, times and numbers are examples.
FAQ
Before you start
Could it overspend my budget?
Every change passes a guardrail check before it is applied. Changes that would push total daily budget over your cap are rejected, and changes that exceed the size or count limits go to approval even in automatic mode. There is also a kill switch, and proposals keep being recorded while it is on.
Will it start changing things right away?
No. Right after you connect, every action runs in shadow mode and nothing is written to Apple Ads. You can connect with read-only access. Write access is only needed when you turn on automation.
Which actions can be automated?
Promoting winning search terms to keywords, changing bids, adding negative keywords, pausing underperforming Exact match keywords, reallocating daily budgets, applying a target CPA, and testing new keywords. New keywords are picked from Apple's recommendations and AI suggestions, up to 20 per app per week, and added to a test ad group at a low bid. This feature is off by default. Paused keywords are never resumed automatically. For each action type, you choose log-only, approval-required or automatic. Campaign creation is the one exception: it happens only when a person approves a recommended campaign structure. Campaigns are created paused and switched on once, after all of them have been created. This feature is also off by default. Capdoux never deletes campaigns.
What happens if a change backfires?
Applied changes are evaluated automatically once their evaluation window has passed: 7 days for bids and budgets; 14 days for negatives, promotions and keyword pauses; and, for target CPA, 14 days after a 14-day learning period. Capdoux then waits another 3 days for Apple's attribution to settle before it decides. For example, if it is highly likely that a bid increase has pushed the cost per additional new download 25% or more above the target CPA, Capdoux creates a change that restores the previous bid. A new keyword test is paused if it spends 2x the target CPA without a new download, or gets no impressions within 28 days of being created. Because a rollback restores a previous value, the change size and count limits do not apply to it, but it still respects the kill switch, log-only mode, manual edit locks, approval requirements, minimum and maximum bids, and the total daily budget cap.
Will it overwrite changes I make in Apple Ads myself?
The daily sync detects changes made by people, and automation leaves those items alone for 7 days.
Do I need an Anthropic API key?
Search term intent classification and optimization require you to register your own Anthropic API key. Usage is billed to your Anthropic account. While no key is registered, data import and reports keep running.
How are my Apple Ads credentials stored?
The key pair is generated on our servers, and only the public key is shown to you. The private key is stored encrypted with a data key unique to each connection, and it is decrypted only while that ad account's jobs run. Disconnecting deletes it immediately.
How much does it cost?
Joining the beta is free. Pricing for the general release will be announced once it is set. [Pricing: pending]
Start in shadow mode and see the proposals
Signing up is free. You can connect with read-only access, and nothing is written to Apple Ads. You can stop automation at any time.
Join the free beta