My campaign won't launch — "insufficient balance"
What the 402 error means, the math behind it, and whether to top up or reduce your daily budget.
What this is
When you click Launch campaign and we see your wallet doesn't have enough to cover one day of spend, we stop the launch and show this modal:
Screenshot
The Insufficient wallet balance modal with the daily budget, current balance, and shortfall amounts
The launch doesn't go through — nothing is sent to Meta or Google. We're protecting you from a campaign that would auto-pause on day one.
The math
We need at least one day of daily budget in your wallet before we'll launch. So if your daily budget is $20:
- Wallet balance < $20 → block launch, show this modal.
- Wallet balance ≥ $20 → launch goes through.
If you're advertising on both Meta and Google, we need 2× daily budget (one day per platform). So $40 minimum for a $20/day cross-platform campaign.
You have three options
Option 1 — Top up your wallet (most common)
- In the modal, click Add funds to wallet.
- You're sent to the wallet page where you pick a top-up amount ($50, $100, $250, $500, $1000).
- Pay via LemonSqueezy (card, Apple Pay, Google Pay).
- After payment, your balance updates. Click back to your draft campaign and try Launch again.
We recommend topping up enough for at least a week of spend so you don't trip this again.
Quick math
$20/day × 7 days = $140. Round up to the nearest top-up amount: $250 gives you about 12 days of runway. $100 gives you 5 days. Pick based on how confident you are the campaign will pay back.
Option 2 — Reduce your daily budget
If you want to keep the campaign small for testing, lower the budget so your current balance is enough.
- In the modal, click Reduce daily budget.
- You bounce back to the budget step. Move the slider down — minimum is $5/day.
- Continue through the wizard and try Launch again.
Sub-$10 budgets perform poorly
Meta's algorithm needs some volume to learn. Below $10/day it often delivers very little — your CPL (cost per lead) gets worse, not better. We allow $5 but don't recommend it.
Option 3 — Save the draft for later
If you're not ready, just close the modal. Your campaign sits in Draft state under Campaigns. You can launch it any time later.
Did the top-up not show up?
Once you pay, your wallet usually updates within 10–30 seconds (we receive a webhook from LemonSqueezy). If you're back on the wallet page and the balance is still the old number after a minute:
- Refresh the page. Sometimes the page-load happens before the webhook lands.
- Wait 60 seconds and refresh again. LemonSqueezy occasionally batches webhooks.
- Check the transactions list. If your deposit shows up there, the balance is correct — just refresh.
- If 5 minutes pass and there's no transaction: email support with your LemonSqueezy receipt and we'll reconcile manually. This is rare.
See also: I closed the browser during top-up — what happened?.
Common questions
Q: Why does Odobba require pre-payment instead of a credit card on file? A: It keeps the bookkeeping simple and prevents surprise bills. You always know exactly what's at risk.
Q: Can I get a refund if I top up too much? A: Yes. Email support with the transaction ID. Refunds go back to the original payment method within 5–10 business days.
Q: My balance shows $43.20. Why can't I launch a $20 campaign? A: Look at your campaign settings — are you on both Meta and Google? That needs $40 minimum. Otherwise it should launch. If the modal still appears, contact support.