---
title: "Set a monthly data budget that resets on renewal day · Kilobat Recipes"
url: "https://kilobat.app/guides/recipes/monthly-data-budget"
description: "Give each network a data budget in Kilobat that starts over on the day your plan renews, with alerts at 50, 80 and 100 percent, and app quotas."
---

Recipe

# Set a monthly data budget that resets on renewal day

A Kilobat budget belongs to one network. It can start over daily, weekly, or monthly on the day your plan renews.

Needs Kilobat Pro in the app · Stopping new connections needs the network filter · Checked: 29 October 2026

## In the app

1. Join the network that has the data plan.
2. Open Settings in Kilobat and find Data budget.
3. Set the budget for this network in GB.
4. Set Starts over to Monthly. Then set Day of the month to the day your plan renews.
5. Under Alerts, click 50%, 80% or 100% to get a notification once per cycle.
6. To limit one app, click its row in the app list and click Set a quota…

## With the CLI

1. Set a 30 GB budget that starts over on day 14 of each month, with three alerts.

   ```
   kilobat limit 30 --cycle monthly --reset-day 14 --alert 50,80,100
   ```
2. Read the budget and the use in this cycle.

   ```
   kilobat limit
   ```

   Output For example: `Budget: 20 GB · Until reset`, then the use in this cycle and the alerts.
3. Limit the uploads of one app to 2 GB per cycle.

   ```
   kilobat quota com.getdropbox.dropbox 2 --upload
   ```
4. List the app quotas and their use.

   ```
   kilobat quota --list
   ```

## Through MCP

Connect the MCP server once with `claude mcp add kilobat -- kilobat mcp`. For other clients, see [the docs](https://kilobat.app/docs#agents). Then an agent can call these tools. Tools that change settings tell the agent to ask you first.

| Tool and arguments | What it does |
|---|---|
| `set_budget` `{"gb": 30, "cycle": "monthly", "reset_day": 14, "alerts": "50,80,100"}` | Set the current network's budget and when it starts over. |
| `set_app_quota` `{"app": "com.getdropbox.dropbox", "gb": 2, "direction": "upload"}` | Limit one app per budget cycle. |
| `list_rules` | The `budget` with `usedBytes` and when it `resets`, and the app `quotas`. |

## Good to know

- If your plan renews on the 31st, the budget starts on the last day of shorter months.
- With filtering on, new connections stop when the budget is used up in Travel and Work. Unrestricted only tracks it.
- Kilobat samples traffic every second. An app can go a little over before it stops.
- The budget counts Internet traffic only. Local network and AirDrop traffic do not count.

## Questions

**Does the budget continue after a restart?**

Yes. A budget with a cycle counts the usage history of that network.

**My carrier shows a different total. Which is right?**

Kilobat sees only this Mac. Compare the same period with [Compare Kilobat with your carrier's data figure](https://kilobat.app/guides/recipes/compare-carrier-usage).

## Sources

- [Kilobat docs: Data budgets and app quotas](https://kilobat.app/docs#budgets)
- [Kilobat llms.txt: CLI and MCP reference](https://kilobat.app/llms.txt)

Sources checked on 29 October 2026. Man pages are the ones installed with macOS; open one with `man <name>` in Terminal.

## Related guides

- [Compare Kilobat with your carrier's data figure](https://kilobat.app/guides/recipes/compare-carrier-usage): Your carrier and Kilobat count different things.
- [See which app uses data on a hotspot](https://kilobat.app/guides/recipes/hotspot-data-by-app): Kilobat shows the upload and download of each app on your Mac.
- [Block an app on metered networks](https://kilobat.app/guides/recipes/block-app-on-metered): The Travel profile allows only the apps that you choose.
- [Make a Mac treat a network as metered](https://kilobat.app/guides/metered-network-mac): macOS marks some connections as expensive, such as an iPhone Personal Hotspot.
