What I learned over a year of asking users for money for the first time

Owen Williams
Aug 28, 2018 · 11 min read

About a year ago, I was really tired of clickbait, ad-riddled news like many others, and wanted an alternative. I had always wanted to launch a daily edition, so decided to just do it — and ask for money right out of the gate.

Thus, an experiment was born: re:Charged, a morning technology briefing, designed to be a too long, didn’t read, of the industry, and why it matters, delivered to your inbox. I launched in August 2017, and a year today, I’ve been delivering four days a week, without missing a day.

I felt that the industry went through too many hype cycles, press junkets and access journalism, and wanted to create the thing I needed years ago: an accessible way to interpret the industry from both inside and out, and save time reading the actual news.

Looking around, there were few products that could help me build this as a platform that would grow over time, and make community the center of it all. I tried a few platforms, but ended up building my own tooling. Yup, insane.

With more than 250 briefings now delivered, and hundreds of thousands of words, I wanted to reflect on a long, weird year of asking people directly for money, and what it took to get here today.

Hacking it together

The very first version of the app underneath re:Charged

In January I wrote about a surprise turn of events leading to building re:Charged by accident, and that’s really how it happened: by accident.

Thanks to a newfound focus, and an ability to finally understand things like PHP, I began hacking together what I imagined it would look like at nights and on the weekends, on top of my day job.

The first version of the platform was built on top of the legendary Craft CMS, with a sprinkle of the Charge plugin thrown in, and some custom logic to handle subscriptions. Yeah, it’s just a CMS, but it did the job, because it’s super flexible, with a great API for rapidly prototyping on.

So. Much. Code.

In August, with a terrible-but-functional prototype in hand, I decided to begin writing and just see how it would go along with a few friends — about 20 people signed up, and I started writing newsletters Monday to Friday when I woke up in the morning.

It went surprisingly well! Despite the bugs and hiccups, people were understanding of the issues, and willing to help me debug.

It was terrible in terms of experience, but people loved the content enough to stick around. Validation! A few of them told their friends where the signup page was, and I started realizing that people were actually willing to pay.

I got into Google’s hardware event, but the badge made me laugh!

I wrote from on planes, in a tent, late at night in bed, in cafes around the world, flew to San Francisco on my own dime for industry events like Google I/O, asked for access to hardware that the big outlets were getting, and did whatever else I had to do to build something unique.

People responded by showing they valued that, and stuck around.

JFDI: The launch

As the initial audience in those first weeks grew slowly, I decided it was time to ‘Just Fucking Do It’ and open the floodgates. It was still rough, but the content was being delivered, and the rest could come later — I figured maybe 20–30 people would show up, and I could build it from there.

Instead of a big splashy launch, I told subscribers and friends that they could lock in beta pricing forever, if they signed up today and never changed anything or cancelled. That’s it! The offer went out to my weekly newsletter list, and people who saw the tweet — as an early access, super secret deal.

It turned out a little differently than I imagined:

I got around 100 people that month, all of whom were super interested in helping build a different model. Most of them told me they’re tired of advertising, and just wanted one thing to read each day — which was good news, because that’s what I had! I wanted to launch it wider, based on this.

Unfortunately for me, there were a lot of bugs. The biggest problem I had was the Charge plugin, which is a paid Stripe integration, is poorly implemented and didn’t even have a function for reactivating expired subscriptions! Users were expected to create a whole new one, with a different email address. Worse still, the guy who made the extension was missing in action, and simply ignored any requests for help.

These types of surprises are exactly the kind you end up with if you use someone else’s platform, and I knew this going in — but hadn’t expected it to be that bad.

I knew some PHP, but not well enough to deal with this level of issue. I spent weeks awake at all hours, reading books, documentation and tutorials, then fixing the extension myself in a forked version of the code, since the creator wasn’t available and I was stuck with it.

Cutting code and writing in San Francisco, last year

Eventually I learned enough to fix the problems in his code, along with other mistakes I found along the way. I 100 percent do not recommend this approach, but sometimes it’s the only choice.

I knew that I needed a better solution, but fixing what I had in-place and keeping the momentum in the meantime was more important. With the code more stable, and Totally Glued Together™, I launched on Product Hunt — and even more people flooded in. 😱

The Product Hunt effect

When the product reached $1,000 in MRR, it became a lot easier along with my existing freelance clients, to consider leaving my job — so I did, in October of last year, to focus on building my own thing and to experiment with being in control of my own destiny.

More than anything else, the community was really the biggest thing that kept me going: they provided feedback, ideas, and caught bugs for me, as well as giving advice on features they’d love to see.

Most of all, they made it a place I wanted to hang out too, and I think that sense of having a place to privately chat about the industry we’re in (or want to be in) makes re:Charged extra special.

The lull

OK, so we launched, did a bunch of stuff, then what? Well, that’s when it got really hard: working on it every day, over time, and building the product into something sustainable.

Sites like Product Hunt, Indie Hackers, and all these other media outlets glorify the fun parts of launching something, but it’s hard to see what’s really going on behind the scenes: a long, slow road, chipping away at the problem, piece by piece. Oh my god, it’s the most depressing, weird experience ever.

Growth was slow, steady, and reliable, but every cancellation and signup felt like the most gut-wrenching, or exciting, thing that could possibly happen. It was a strange emotion, and looked something like this in the numbers:

Green is someone new paying, red is someone canceling. There’s more green than red, but the red hurts more!

There’s this really great piece by Bare Metrics, Navigating the long, slow SaaS ramp of death, that made me feel simultaneously better and worse about all of this:

There can be some really exciting days when you’re building a SaaS company, but the large majority are a slog. Just one foot in front of the other, slowly trudging your way up the hill in the muck. The hockey-stick growth you’ve envisioned feels laughably far away. Amazingly, you are growing every month, but it’s just…so…tedious.

The reality is that most days are about working on the problem, and just moving the needle enough to keep existing. It’s about shipping, and continuing to ship, which gets really hard somewhere in the middle there where you’re like… why isn’t this huge?

I’ve spent the better part of the last six months writing newsletters, despairing at the codebase, rewriting the codebase, and so on — the reality is most of building a product feels futile, but matters in the great scheme of things.

You just have to move forward, because this is where most people just give up. Showing up is what matters, day in and day out, even when you don’t feel like it at all.

A valuable lesson I learned in here, somewhere, was that everything you do matters at this stage, and delighting people was the most important thing I could do for my business. Reminding them every day why they subscribed, and showing up, was what they stuck around for — they were paying, after all.

One year in

For full transparency, here’s my dashboard, today!

It’s been a year now, so where am I at? The good news is things are still positive! I’ve got about €2,300 in stable monthly recurring revenue, 344 paying subscribers, and people tend to stick around! Open rate is north of 65 percent, and the community is growing, particularly with our slick new Discord integration.

Things are stable, and sustainable, even if some months are harder than others — I had never expected to fund a writing-based venture to this level. Churn happens, and some months are bad, but I’m optimistic that some people will come back (and history tends to show that cancellations end up reactivating some months later).

Sure, these aren’t bajillion-dollar monies you read about in the news all the time, but it’s meaningful to me: I can pay my rent, and build something really fun that others get value out of too.

Here’s what I learned by getting here:

Be wary of what products promise: It’s easy to just use some off-the-shelf tool, or a platform for what you want to build, but be wary. As I found out the hard way, it can bog you down for months as you unravel the mess, or even worse, screw you when the platform’s focus shifts away.

I’ve been screwed in the past by platform-scale issues on services like Mailchimp, so I wasn’t eager to tie myself to someone else’s destiny, but at the same time, miscalculated how much time it would take to roll my own solution (and what another developer promised their tools would do!).

I don’t know if this is the right approach anymore, but I now prefer to build whatever I can for myself, and pay for tools to solve any problems that take too long to build, or are outside of my wheelhouse/focus area.

Ship often, even if you’re scared: A lot of the time this year I held off releasing certain features because I wanted the code base to be slick, or it to work perfectly, when I later realized that people were just happy to try it and provide feedback!

Most people don’t mind bugs, as long as they can reach you directly, and you address them personally. I’m getting better at just shipping stuff, and cleaning up behind myself as the feedback rolls in.

Ask for money now, not later: Once people started signing up, I realized I should have done this years ago, and had been considering it for far longer than actually just doing it. Seriously, ask for money sooner than you’re comfortable with, and see how people respond — you might be surprised.

Trials are death for bootstrapped startups: Because my code didn’t initially support trials, I didn’t even offer one. People had to pay, up-front, on perceived value alone. Those that do are likely to be loyal customers, but you’ll lose lots of people who want to try before they buy.

I later experimented with trials, and I’ve decided that that shit sucks, especially at the earliest stages of your company. You get more people signing up, but it’s too much to handle — half of them just want a free ride, they ask for more features, more trial days, complain about the cost, or whatever else, without ever intending to pay.

I don’t do trials anymore, and I don’t know if I will again (famous last words, right?). Weirdly, the only people complaining about price were the ones with trial periods, not the people who paid up-front. Go figure.

Get feedback: I spent about four months rewriting the codebase, stuck in a negative loop, frustrated by how imperfect everything was, before I actually asked someone for help or feedback. When I started articulating my ideas, I realized that I was wasting time in the wrong areas, optimizing things that didn’t really matter, or worrying about my technology choices.

The more you say stuff out loud, especially as a solo maker, the better — it’s easy to think it sounds good in your head, then you discover it’s an incoherent word soup the first time you try to verbalize it. Feedback hurts sometimes, but it helps save way more time than you think.

JFDI: Whatever you build will never stand up to the standard you set yourself. Get used to shipping when it’s shit, and just put it out into the world to see what feedback people give you, bugs and all. It’s better than building a slick, well-designed porsche, then realizing people hate what you designed. Ship now, worry about fixing stuff later.

One year in, I’m still having a blast, and there’s lots more to come, even if it’s a weird series of ups and downs. Most of all, I’m thankful for those people who were willing to back me in the early days, provide feedback, and stick around while I tried out something new.

I’m currently building my own platform for others to build content around a community, and I hope it’ll launch by the end of the year. re:Charged has lots of experiments coming too, such as getting the news as a chat thread on Telegram, Snap-style quick reads and much more I can’t wait to ship.

If you’re wanting to build something for yourself, just do it! The best thing you can do is start asking for money, experimenting, and seeing if people will pay you for what you’re doing. What people do with their wallet speaks volumes.

If you liked this and want to try re:Charged for yourself, I’d love to see you there. Feel free to sign up here to get the best TL;DR of industry news each morning, in your inbox, without advertising or clickbait.

If you just want to say hey, email me on owen@char.gd, I always love hearing about what others are up to.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store