Free tool · runs in your browser
Spreadsheet Builder for bills, subscriptions, and budgets
Type or paste your bills, subscriptions, income, and spending into a spreadsheet that uses DueBy's own column names. Download it as CSV or Excel and keep it, share it, or open it in DueBy with no column mapping.
- Nothing leaves your browser
- No account, no sign-up
- CSV and Excel, editable anywhere
- Converts Mint, YNAB, Monarch, Goodbudget, EveryDollar, Copilot
The builder
Open it in DueBy
- 1
Download the CSV or Excel file. On iPhone and iPad it lands in Files; on a Mac, in Downloads.
- 2
Tap the file and choose Open in DueBy, or drop it onto the DueBy window or Dock icon on your Mac. Settings ▸ Data ▸ Import works too.
- 3
DueBy recognizes the column names, shows what it found, and adds the rows. Files from other apps get a quick column-matching step instead.
Blank templates
Prefer to start in Excel, Numbers, or Google Sheets? These templates have the right column names and dropdowns already in place. Fill them in, then open the file in DueBy.
Column names
Every column is one of these keys. Required columns are marked *. Dates are YYYY-MM-DD; amounts are plain numbers; true/false cells accept yes and no too.
Bills
Anything with a due date: rent, utilities, loans, insurance, taxes.
| Column | What goes in it | Example |
|---|---|---|
| name* | What the bill is called. | Electric |
| amount* | What is due each time. A plain number; $ and thousands separators are fine. | 124.10 |
| currency* | ISO code such as USD or EUR. Blank uses your default currency. | USD |
| due_date* | The next (or first) due day, as YYYY-MM-DD. | 2026-09-14 |
| repeat* | How often it is due: monthly, weekly, biweekly, yearly, every 3 months, once. Blank means monthly. | monthly |
| category | A category name; created if DueBy doesn't have it yet. | Utilities |
| autopay | true or false — whether it is paid automatically. | true |
| reminders | Days before the due day to remind, like 7d,3d,0d. Blank uses your default reminders. | 7d,3d,0d |
| payee | Who gets paid, when it differs from the name. | City Power |
| notes | Anything you want to remember about it. | Account 4411 |
| cancel_url | The page where you cancel or manage it. | https://www.netflix.com/cancelplan |
| shared | true when it belongs to the whole household. | false |
| set_aside_monthly | How much to set aside each month for an irregular bill. | 100 |
Subscriptions
Anything that renews on its own: streaming, software, memberships.
| Column | What goes in it | Example |
|---|---|---|
| name* | The service, as it appears on your statement. | Netflix |
| price* | The current price per renewal. | 17.99 |
| currency* | ISO code such as USD or EUR. Blank uses your default currency. | USD |
| renews* | The next renewal day, as YYYY-MM-DD. | 2026-10-03 |
| repeat* | How often it renews: monthly, yearly, weekly. Blank means monthly. | monthly |
| category | A category name; created if DueBy doesn't have it yet. | Streaming |
| trial_ends | The last day of a free trial, if there is one. | 2026-09-03 |
| cancel_url | The page where you cancel or manage it. | https://www.netflix.com/cancelplan |
| price_history | Past prices as day:amount pairs separated by semicolons, oldest first. | 2024-01-01:15.49;2025-03-01:17.99 |
| shared | true when it belongs to the whole household. | false |
| autopay | true or false — whether it is paid automatically. | true |
| reminders | Days before the renewal to remind, like 7d,3d,0d. | 7d,3d,0d |
| notes | Anything you want to remember about it. | Account 4411 |
Income
Paychecks and other money in, with when it arrives.
| Column | What goes in it | Example |
|---|---|---|
| source* | paycheck, freelance, benefits, gift, refund, or other. | paycheck |
| amount* | How much arrives each time. | 2100 |
| currency* | ISO code such as USD or EUR. Blank uses your default currency. | USD |
| date* | The next (or first) pay day, as YYYY-MM-DD. | 2026-09-05 |
| repeat | How often it arrives: weekly, biweekly, semimonthly, monthly, once. Blank means once. | biweekly |
| received | true when a one-off has already arrived. | false |
| note | Anything you want to remember about it. | Account 4411 |
| income_name | The employer or a label for this income. | Acme Corp |
Categories
Your own groupings, with an optional monthly limit each.
| Column | What goes in it | Example |
|---|---|---|
| name* | The category's name; an existing category with the same name is updated. | Utilities |
| color | One of DueBy's category colors, such as yellow, green, blue, or gray. | yellow |
| symbol | An SF Symbol name for the category's icon. | bolt.fill |
| monthly_limit | The monthly budget for this category. | 400 |
| kind | fixed for bills that don't change, variable for everything else. | fixed |
| hidden | true to keep the category out of the sidebar and pickers. | false |
Transactions
Individual purchases and deposits, for spending history.
| Column | What goes in it | Example |
|---|---|---|
| date* | The day of the transaction, as YYYY-MM-DD. | 2026-09-06 |
| amount* | How much was spent (or received). Negatives from other apps are read as expenses. | 63.27 |
| currency* | ISO code such as USD or EUR. Blank uses your default currency. | USD |
| category | A category name; created if DueBy doesn't have it yet. | Groceries |
| note | The merchant or a memo. | Trader Joe's |
| income | true when the row is money in, not an expense. | false |
Goals
Savings goals, including the emergency fund.
| Column | What goes in it | Example |
|---|---|---|
| name* | The goal's name; an existing goal with the same name is updated. | Emergency Fund |
| target* | How much you are saving toward. | 7920 |
| currency* | ISO code such as USD or EUR. Blank uses your default currency. | USD |
| balance | How much is saved so far. | 1980 |
| monthly_contribution | How much you add each month. | 200 |
| emergency_fund | true for the emergency fund. | true |
Payments
Past payments of a bill or subscription, one row per payment.
| Column | What goes in it | Example |
|---|---|---|
| bill* | The bill or subscription the payment belongs to, by name. It must already be in DueBy or in the same file. | Netflix |
| date* | The day it was paid, as YYYY-MM-DD. One row per payment; the same bill and day never import twice. | 2026-08-03 |
| amount* | How much was paid that day. | 17.99 |
| currency | ISO code such as USD or EUR. Blank uses the bill's currency. | USD |
| note | Anything about that payment. | Paid by card |
The same layout is what DueBy writes when you export all your data, so a file can go builder → app → export → spreadsheet and back.
Questions
- Is my data uploaded anywhere?
- No. The builder runs entirely in your browser. Drafts are kept in this browser's local storage so you can come back later, and Clear my data removes them. There is no account and no server on the other end.
- Do I need DueBy to use this?
- No. The CSV and Excel files are ordinary spreadsheets you can keep, print, or share. DueBy is the fastest way to turn them into reminders and a plan, but the files are yours either way.
- Can I bring my Mint, YNAB, Monarch, or Goodbudget data?
- Yes. Use Bring a file from another app, choose or paste the export, and confirm the column matches. Transaction exports become spending history; recurring charges in it are offered as bills and subscriptions when DueBy imports the file.
- Which date and number formats work?
- Dates are safest as YYYY-MM-DD, and that is what the builder writes. Pasted dates like 9/14/2026 or 14 Sep 2026 are converted; ambiguous ones like 3/4/2026 follow the order you pick above the table. Amounts can include currency symbols and thousands separators; they are cleaned up on export.
- What is the dueby_schema column?
- A marker column with the value 1. DueBy sees it and skips the column-matching step. You can delete it; the file still imports, DueBy just double-checks the columns with you.