Overexcited about new feature.

I’m always hoping for a magic bullet that permanently cranks up my MRR but at this point I’ll accept a bump.

🎵 Sharing my numbers sharing my numbers sharing my numbers 🎵

I'm becoming inured to the peaks and valleys.

Good thing is my accountants will get paid this quarter.

But if I can finish a project this week I might be able to pay myself first.

I have simplified Shoot’s in app purchases with basic unlock and non-renewing subscription for a year of updates. I still have PTSD from last time I messed this up but actually… I made extra money from it… A user even thanked me for a chance to pay again!
But 🤞
A lot of this comes down to writing - on social media, for video content, for newsletters, for onboarding and in-app copy, for marketing pages.

But when you're not feeling inspired, it's almost impossible to sit down and get started.

Easier to write more code.

-42% revenue but I didn't work and spent the week in Italy so I count this as a win #BuildInPublic
2019: Quit contracting because I felt my life could be better spent than optimising the checkout flow of some company’s app

2022: Optimising the checkout flow of my own app every 6 fricking weeks

It got worse again this week! Looks like I have some new crashes - maybe that's why? #BuildInPublic
I was nervous again this week and then confronted with a horrifying reversion to poor ($321) Shoot sales. The silver lining is that my other apps (Beat Sheet, Deluge MIDI Manager, Deluge Stems Uploader) sold $155 last week, adding a bonus 50% #BuildInPublic
Another week around $1k feels great. I'm seeing some crashes but more than half of people are saying they're recommend Shoot to others this week (with 40% saying "maybe"). Has the change to freemium done the trick? Looks like it (cos I had the impressions)! #BuildInPublic
And I spent some time adding a new metric: Customer Satisfaction. I have a quiz where I ask "Would you recommend Shoot to others?". Currently I have a 42% "Yes" rate (in the chart "yes" is green, "maybe" is orange, "no" is red). Will start by emailing the maybes. #buildinpublic
This week I felt a knot in my stomach as I logged into App Store Connect, expecting horrifyingly low Shoot sales now that it's free to download. But it looks like my plan worked. Or maybe it was thanks to @IsotonikStudios hawking it for me! > $1k in one week. \o/ #BuildInPublic
So there it was. I polished things up, cursed the 30 year old Apple framework and shipped the fix. It passed App Store review quickly and now I am happy again.

What a week.

Still this didn't fix it.

But the machinations of StoreKit were becoming more clear to me and by installing my Xcode build over a paid version (luckily I bought my own app back in 2017) I was able to swizzle the receipt url and debug into the problem. #swift #buildinpublic
I want to share the comedy of errors that continued marred this release. #buildinpublic

I waited the entire long-weekend for App Review. Several days of waiting used to be normal it's less common now, so I assumed it was something to do with Labor Day in the US.
The build was approved within an hour.

I am experienced enough not to have assumed everything was fixed so I selected the 7-day rollout again. But I felt like it was fine.

But it was NOT AT ALL FINE... #buildinpublic
What is interesting is that I had a load of new traffic from China (I recently sorted out the stale translations throughout the app and app store).

I still think I did the right thing in letting more people try before they buy, but I'm so over these low sales.
Ok so the worst thing happened releasing the watermarked version of Shoot. I can't tell how much anybody paid for the app from the code, I just get a build number. But I thought it was like 3.1.5, 3.1.6, 3.1.7. I got an email this morning from a user with problems. #BuildInPublic
But because some people will have paid and some people will have downloaded version 3.1.7 for free, I can't just blanket watermark everyone's app after that version. But that means I miss out on revenue from the one-off paid-to-free spike :-/ #BuildInPublic