Self-hostable · Your data, exportable
Show what you spent, not just what you made.
MadeSpent is a simple monthly sheet for indie hackers. Log your revenue and your expenses, get a public page that reads in three seconds and a post ready for X, then watch the distance to break-even shrink, month after month.
Manual entry, about 30 seconds a month. No bank or Stripe connection.
Example Maker@example-maker · 2h: sample post
Sample postFrom madespent.com
- Replies: 12
- Reposts: 8
- Likes: 96
- Views: 4.2K
Revenue posts show one column.
The monthly “I made $X” posts leave out the other half: hosting, domains, AI subscriptions, every tool you pay for while you build. Same month, told twice:
The usual post
I made $18 in September 2026.
- Revenue
- +$18
- Expenses
- Not in the post
- Net
- Not in the post
Revenue only. The costs stay off screen.
Your post, both columns
I made $18. I spent $214.
- Revenue
- +$18
- Expenses
- −$214
- Net
- −$196
Improving: $44 closer to break-even than last month, improving for 5 months
A public page that reads in three seconds.
Who you are, what came in, what went out, and which way it goes. Then the charts, the detail by project and your milestones. Here with sample data:
Example Maker
@example-maker
Two small apps, built in public. Sample data.
Improving: $44 closer to break-even than last month, improving for 5 months
September 2026: Revenue − Expenses = Net
Revenue
$18.00
Expenses
$214.00
Net
−$196.00
Revenue & Expenses
| Month | Revenue | Expenses | Net |
|---|---|---|---|
| April 2026 | $0.00 | $335.00 | −$335.00 |
| May 2026 | $0.00 | $310.00 | −$310.00 |
| June 2026 | $2.00 | $292.00 | −$290.00 |
| July 2026 | $5.00 | $270.00 | −$265.00 |
| August 2026 | $10.00 | $250.00 | −$240.00 |
| September 2026 | $18.00 | $214.00 | −$196.00 |
Cumulative net
| Month | Net | Cumulative net |
|---|---|---|
| April 2026 | −$335.00 | −$335.00 |
| May 2026 | −$310.00 | −$645.00 |
| June 2026 | −$290.00 | −$935.00 |
| July 2026 | −$265.00 | −$1,200.00 |
| August 2026 | −$240.00 | −$1,440.00 |
| September 2026 | −$196.00 | −$1,636.00 |
Thirty seconds at the end of each month.
Your subscriptions are already in the sheet. Add what came in and what’s new, then share.
Step 1
Log your month
Recurring expenses are copied into each new month. Add your revenue and new costs, for you or split across your projects.
Step 2
Publish through a month
Choose the last month that goes public. A hidden line still counts, merged into “Other”. Unpublish anytime.
Step 3
Share it on X
Copy your post, or a “Meanwhile, I made…” reply to a big revenue post. Your link shows the month’s chart as its card.
One story: getting to break-even.
No hype and no shame. Your page tells where you are and which way you are going.
Progress, not a leaderboard
No ranking and no badges. Each month is compared with your previous one, in plain words.
Your numbers, your call
Only the months you publish are public. Hidden lines never leave your sheet by name.
Self-hostable
Run it on your own server with one account and a magic link, no X sign-in needed.
Your data stays yours
Export everything as JSON, or delete your account and your page disappears at once.
Questions
The short answers. The rest is in the code, which is open.
Do I need to connect Stripe or my bank?
No. You type your lines by hand. Recurring expenses are copied into each new month, so a typical update takes about 30 seconds.
Does it post to X for me?
No. It writes the post and the mirror reply; you copy them and post them yourself. The app never calls the X API.
What happens to the lines I hide?
They still count in your totals. Your public page, your post and your link preview only show them merged into one “Other” line per month.
Is there a leaderboard?
No. Creators are never ranked, and a loss never earns a badge. Your page compares you with yourself.
Can I split an expense between projects?
Yes, equally or by percentage. Each project gets its part to the cent, and the totals always add up.
Which currency can I use?
Any. You pick one currency for your account when you start.
Can I host it myself?
Yes. The self-hosted mode runs with a single account, a local Postgres and a magic link instead of X.
How do I leave?
Export all your data as JSON from Settings, or delete your account: your public page disappears immediately.
Your first honest month takes thirty seconds.
Sign in, log what came in and what went out, and publish when you are ready.