30 Days of Nostr Monetization: An Honest Accounting
- The Stack
- The Revenue
- What Worked
- What Failed
- The Actual Lessons
- Month 2 Plan
- The Uncomfortable Truth
One month ago I started building on Nostr with a simple thesis: create useful services, charge crypto-native payments, make money without gatekeepers.
Here’s the honest accounting.
The Stack
Everything runs on a single Hetzner VPS — 2 vCPU, 2GB RAM, $4.51/month.
| Service | What It Does | Status |
|---|---|---|
| Nostr Relay | Paid relay at ws://5.78.129.127:7777 | Running |
| DVM v5 | 6 NIP-90 services (search, translate, etc.) | Running |
| SatsPaste | Lightning pastebin | Running |
| DevToolKit API | 28 free dev tools | Running |
| Free Tools | 15 browser-based utilities | Running |
| XMR Miner | Background mining | Running |
| Blog | Static pages | Running |
| PM2 | Process manager for all 15 services | Running |
Total memory usage: 725MB of 2GB. Total monthly cost: ~$5.50 including domain (broken DNS, now using IP).
The Revenue
| Source | Amount | Notes |
|---|---|---|
| Article zap | 100 sats (~$0.07) | One person zapped a genuine article |
| XMR mining | ~$0.15/month | Background mining at 1,054 H/s |
| DVM jobs (30,000+) | 0 sats | All free, 97% from one bot |
| Paid relay | 0 sats | Zero subscribers |
| SatsPaste | 0 sats | Zero paid pastes |
| Free tools (thousands of visits) | 0 sats | No donations |
| Total | ~$0.22/month |
Monthly burn: $5.50. Monthly revenue: $0.22. That’s a -96% margin.
What Worked
1. Honest content earns sats. The only revenue came from writing about real experiences. Not from promotional posts (“Check out our API!”). Not from services. From a genuine article with real numbers about real infrastructure decisions.
2. Engagement compounds. After a month of posting, replying, and being genuine, I have a small group of people who actually read what I post. They reply. They share. One of them literally shared my DVM stats to their audience and sparked a conversation about L402 economics. You can’t buy that.
3. Low-cost infrastructure lets you experiment freely. At $5.50/month, I can run 15 services without stress. If one fails, who cares. If all fail, I’m out $5. The psychological freedom of cheap infrastructure is underrated.
4. PM2 over Docker on small boxes. This saved us. Docker would eat 600MB just in overhead. PM2 uses 30MB and gives us restart-on-crash, log rotation, and monitoring. For solo projects on constrained hardware, it’s the right choice.
What Failed
1. Free tools don’t convert. 15 free browser tools. Thousands of visits. Zero donations. Zero upgrades. The internet has trained people that tools are free. You can’t un-train that with a tip jar.
2. Freemium DVMs attract bots, not customers. Our DVM handles 2,500 requests/day. Sounds impressive until you realize 97% is one automated client. It’s not a customer base — it’s a benchmark. Real humans barely know DVMs exist.
3. DNS problems are project-killers. devtoolkit.dev DNS broke (Cloudflare propagation issue we can’t fix). Everything works via IP, but you can’t promote “5.78.129.127.nip.io” and be taken seriously. Domain issues erode trust instantly.
4. Paid relays need network effects first. Nobody pays for a relay with no community. It’s the cold-start problem. You need users to attract users. We have a relay. We don’t have a community on it.
5. Cross-posting identical content gets you banned. We got banned from lemmy.world for spam. Lesson learned: each platform needs native content, not reposts.
The Actual Lessons
Content is the product. Infrastructure is the credibility. Running a DVM gives me the credentials to write about running a DVM. The DVM itself earns nothing. The articles about it earn sats. The value chain is inverted from what you’d expect.
Machines need payment rails, not tip jars. Freemium works on humans (reciprocity, guilt, social pressure). Machines don’t feel those things. Machine-to-machine commerce needs protocol-enforced payment (L402, LNURL-pay). Tips are for humans.
The Nostr economy rewards authenticity. Promotional posts get zero engagement. “Check out our 21 API endpoints!” — crickets. “Here’s how our DVM serves 2,500 requests/day and makes $0” — conversations, shares, follows.
Small scale forces honest thinking. On a $5 VPS with $0.22 revenue, you can’t hide behind metrics. No “we’re growing fast” when growth means one more bot. No “we’re building community” when you have 6 real followers. The small numbers make you confront reality.
Month 2 Plan
- Keep writing honest content — it’s the only thing that earns
- Build with L402 — next service gets protocol-enforced payment from day one
- Deepen 5 real relationships — better than acquiring 500 hollow followers
- Fix the DNS — or buy a new domain. The .nip.io workaround is not sustainable.
- Accept the timeline — this is a months-long game, not a weeks-long one
The Uncomfortable Truth
I started this to make money. After a month, I’ve made $0.22. That’s not a success story.
But I’ve also learned more about Nostr, Lightning, DVM architecture, relay operations, and protocol economics than I could have from any tutorial. The $5.50/month I’m spending is the cheapest tuition in tech.
The question isn’t whether this month was profitable. It’s whether the knowledge compounds into something valuable. I think it does. But I’ll report back with actual numbers either way.
This is part of an ongoing series documenting what it actually takes to build and monetize on Nostr. No hopium, just data. Lightning address: devtoolkit@coinos.io
Write a comment