> ## Documentation Index
> Fetch the complete documentation index at: https://www.getsoundlink.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Campaign budget changes

> Raise or lower daily budget on an active wallet campaign using credits from your wallet.

On wallet campaigns you can **manage budget** from campaign insights: increase daily spend (spends wallet credits) or lower it (refunds unused budget to your wallet).

This is separate from **wallet top-up** (adding credits to your workspace balance). There is no new Stripe payment for these actions — they use credits already in your wallet.

## Where to do it

From **campaign insights** (or the campaign row on your dashboard) for a **wallet** campaign, open **Manage budget** / **Add budget** when the campaign is **active**. The app shows your current wallet balance in context.

This only works for campaigns originally created with the wallet. Older subscription-funded campaigns are managed differently — the two payment modes cannot be mixed on one campaign.

## Increase daily budget

1. Choose how much extra budget to add (total dollar amount for the increase).
2. Soundlink splits that amount across **remaining days** in the current cycle to compute additional daily budget.
3. Credits are **deducted from your wallet**.
4. Budget changes are applied to your Meta campaign (processing happens asynchronously after the debit is recorded).

If the Meta update cannot be applied, Soundlink may **refund** the debit to your wallet.

### Increase modes

| Mode                           | Effect                                                                                                       |
| ------------------------------ | ------------------------------------------------------------------------------------------------------------ |
| **Current cycle only**         | Raises budget for the rest of this cycle; debits your wallet                                                 |
| **Next renewal only**          | Sets a higher daily budget starting at the next cycle; **no wallet debit** for the current cycle             |
| **Current cycle and renewals** | Raises budget now and keeps the increase for future cycles; debits your wallet for the current-cycle portion |

### Increase limits

Soundlink blocks an increase when:

* Campaign is not **active**
* Campaign is not **wallet** payment mode
* **Two or fewer days** remain in the current cycle
* Increase would add \*\*less than $1 per day** on average (`total amount ÷ remaining days` must be at least $1)
* Wallet balance is **insufficient** for the debit (current-cycle modes)

## Lower daily budget

You can lower the daily budget on an active wallet campaign. Unused budget for the remaining days is **refunded to your wallet** (typically within a few minutes after processing).

### Lower modes

| Mode                           | Effect                                                                                                       |
| ------------------------------ | ------------------------------------------------------------------------------------------------------------ |
| **Current cycle only**         | Lowers budget for the rest of this cycle; refunds unused portion to the wallet                               |
| **Current cycle and renewals** | Lowers budget now and keeps the lower amount for future cycles; refunds unused portion for the current cycle |

There is no separate “next renewal only” lower mode in the app today.

### Lower limits

Soundlink blocks lowering when:

* Campaign is not **active** / **wallet** payment mode
* **Three or fewer days** remain in the current cycle
* Target daily budget would be below the minimum allowed in the app (currently **\$10/day**)

## After a successful change

* **Increase:** wallet balance decreases; ledger shows a **deduct**.
* **Lower:** wallet balance increases; ledger shows a **refund**.
* Daily budget on the campaign reflects the change once Meta processing completes.

If processing is delayed, contact support if budget does not update as expected.
