Zach Shakked Profile picture
Mar 3, 2022 53 tweets 11 min read Read on X
I've been building apps since 2014 and have made a TON of mistakes along the way. Let me save you some time and help you avoid a lot of pain and frustration, here are my 50 tips for making it as a solo developer
1/ If you ever plan on selling your app, things will be a lot more complicated if you have an iCloud entitlement because then you can't transfer an app. Try to avoid using iCloud or CloudKit
2/ don't make your app a paid up front app. If you can convince people to pay up front, you can probably convince them to pay for a subscription. Freemium will almost always net you more $ and paid up front is almost never worth it. Add lifetime instead
3/ analytics are your eyes and ears, add firebase events at a minimum (free), and if you're serious use Mixpanel or Amplitude. Otherwise, you're flying blind and have no idea how people are using your app
4/ do keyword research using Appfigures or another ASO tool to strategically pick app keywords/titles/subtitles that match what users are already searching for on the app store
5/ take paywall inspiration from top grossing apps. A lot of ppl have spent absurd amounts of time and money testing their paywall - don't bother trying to reinvent the wheel (use @superwall for fast iteration and amazing templates) / paywallscreens.com for examples
6/ prompt for ratings early in the first app session. After the user experiences a core feature of the app, prompt for a rating/review as these help with your rankings for app store keywords
7/ add a feedback Typeform or email within the app in an obvious place so you can gauge users' anecdotal experiences with the apps and spot problems/bugs quickly. User feedback should be a core source of your future roadmap
8/ append useful metadata about the build to feedback requests in email subject lines or typeform url parameters like build #, timezone, country, device type to make debugging things easier
9/ if you’re not amazing at ui design or user experience, draw inspiration from popular apps and put your own twist on their designs. When learning design, one of the most popular pieces of advice I received was “try to recreate existing designs”, this is a great way to learn
10/ don’t reinvent the wheel - if building backends isn’t easy for you, use firebase / supabase or another backend-as-a-service. You can always change things down the road. Make sure you use one where data can be easily migrated (aka NOT CloudKit)
11/ don’t over engineer - use shitty code design patterns and be lazy. Get the app out ASAP, start collecting reviews & feedback, and iterate and improve. Better to sprint launch a crappily-coded version of your app in 2 weeks then spend 3 months building an app no one wants
12/ optimize for learning speed - you want to be learning as much as possible about your market and users as fast as possible, so it’s better to update frequently in the beginning then spend months building the “perfect” version because perfection is elusive
13/ NEVER offer iPad in the beginning - it makes your life hell. You can’t ever unsupport iPad, the market for iPad is much smaller than iOS, you always need extra screenshots, extra testing, and it just slows you down in the beginning which is exactly when you want speed
14/ lean on SaaS providers - most of them have startup plans that are really generous (ask if you don’t see one) - tools like Intercom, customer.io, revenuecat, superwall, sendbird, firebase, typeform, zendesk are all awesome and will save you a lot of time
15/ when you get rejected, don’t get frustrated. I used to get so mad every time I was rejected, now I just accept what they say, and upload a tweaked build with whatever changes they want. if it’s your first app, there’s probably a lot of little things you didn’t so laugh it off
16/ a good strategy is to launch the app as free and use the free-ness as a marketing line on reddit, discords, and other forums. You can figure out what features are popular and later paywall those for new users while grandfathering free access for legacy users
17/ don’t be afraid of competition (aka lots of similar apps in the same space) - competition is a good thing! It means people are already searching, downloading, and paying for apps in that space. In the long run, the best app will win
18/ take breaks for weeks at a time - often times it takes a few weeks for things to settle or happen, new updates takes 48 hours to propagate, word of mouth builds, and revisiting the app in two weeks or a month later with a fresh set of eyes will help you make it better
19/ if you have a feature that you think could be its own app, try launching it like so. Each app listing is like opening a new restaurant, diners sell steaks but you’re more likely to buy steak from a steak house. Apps branded around a core feature do better than a 1-stop shop
20/ the best apps do one thing really well, find that one thing and relentlessly improve on it - what is the core flow in the app that people use? Work on that
21/ work on the highest volume parts of the app - adding a setting that lets 1% of users customize some niche feature won’t move your metrics, but making onboarding better so 80% of people make it through instead of 50% could change the trajectory of everything
22/ take advantage of A/B testing features in App Store connect, test different screenshots, app icons, app descriptions, app subtitles, everything - one little change could make a huge difference, at a minimum you’ll learn what doesn’t work
23/ add surveys! Typeform chat-surveys are my new favorite thing because it looks like you’re having a conversation - ask users the classic PMF questions or just say “what do you like/dislike about the app?” - ask for an email and setup a call to truly understand your users
24/ test big changes in pricing - try $20/year, $80/year, and $200/year - you could be vastly undercharging or overcharging for your app and you’d never know it. Test big changes in the beginning
25/ ofter lifetime plans - I haven’t tried this one myself but planning to and lots of companies say it’s their biggest seller - try it why not?
26/ add a video to your paywall - helped my conversion rate a lot and I’ve heard the same from others
27/ add push notifications via firebase (free) and send out marketing messages on big events, it’s free engagement
28/ use Deel to hire contractors, it’s the gold standard, affordable, and they have a great contract that makes sure you have all the boxes ticked in terms of IP and confidential information
29/ if you use Upwork, likewise get contractors to signup through Deel (even if you pay them on Upwork) just to verify that they are who they say they are (I’ve had a number of instances of ppl who were using fake names, Deel requires ID/Passsport verification)
30/ always give subcontractors new emails to do work under (gsuite), that gives you a backstop if something ever happens or if you fire them so you can revoke their email access, revoke access to everything BEFORE you let them go
31/ use termsfeed.com for privacy policies and terms of service until you get big enough that you need a legit lawyer to do it
32/ use trackable links for all campaign promotions, in ASC you can generate links that let you see revenue, installs generated by a specific link (opt-in only) and you can extrapolate data
33/ hide ASC promo links behind bitly (bitly has an apple.co domain somehow)
34/ be wary of using fresh tech that apple gives us, i.e. swift had breaking changes for the first few years, same thing with SwiftUI, using older but reliable frameworks can save you future hassle
35/ either way, use whatever languages/frameworks allow you to ship as fast as possible, speed matters way more than good engineering in the beginning
36/ dont ever use apple search ads basic, watch a few videos and learn about advanced apple search ads, its not that hard, try bidding on competitor keywords (exact match) - this is where you can find cheap, high-intent installs
37/ build in public to get word of mouth marketing and initial hype - some drawbacks for sure (I would know), but people love seeing progress and it can be a great way to grow an app in the beginning
38/ if you want to launch on product hunt, get someone who has a lot of followers to submit it, often if you ask they will if the product isn’t horrible, at a minimum ask for feedback from top hunters and it could lead to a future conversation where they offer to submit it
39/ consider adding intercom to your app in the beginning so you can legit have convos with users and talk to them in real time as they’re experiencing the product, great way to collect feedback
40/ if you get a random idea for another app, just build it and sprint launch it in a weekend, don’t worry about getting distracted from your core app projects, inspiration fades so act on it immediately (Naval)
41/ the correlation between time spent working on an app and it’s success is not 1:1, an app you build in a weekend can easily surpass an app you spent 6 months on if the idea or positioning is better
42/ form a llc if you start getting some traction, convert to an S-corp if you’re not planning to raise investor money (saves you a lot on taxes if you’re making > $150k I think, not financial advice)
43/ ur company’s legal name acts as ASO keywords in the App Store so name it intelligently if your doing that
44/ if you want feedback from successful devs, dm them on twitter/instagram with super straightforward easy to answer questions (i.e. here are two screenshots of my paywall, which do you like better) - open-ended questions take time/energy to answer so less likely for a response
45/ keep really clean accounting books (makes everything easier), know exactly how much $ you are spending per month and how much you are profiting
46/ use donotpay.com burner credit cards for free trials of SaaS tools so you don’t get accidentally billed
47/ if your app is getting some traction, trademark your name in the us - its pretty cheap and definitely worth it
48/ the best tips are in niche group chats and communities, try to find a community of indy devs or make one with friends to share tips and tricks, they aren’t hard to find
49/ listen to subclub podcast, acquired, myfirstmillion, not investment advice to keep up with trends and get ideas
If you found this useful, drop me a follow! I build in public a lot and share my growth hacks/tips frequently :)

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Zach Shakked

Zach Shakked Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @zachshakked

Aug 16, 2022
Image/video storage is really broken for mobile apps. I've spent two weeks (off/on) implementing this into Fooga.

Problem: I wanted moderation, cdn, and a simple SDK.
I love DigitalOcean's Space's product, super clean UX and intuitive with a CDN built-in, but no moderation and no mobile SDK.

They're compatible with AWS S3 SDKs, but implementing S3 is a nightmare on iOS. Tons of boilerplate. You need to set up AWS-Amplify, billing, etc.
I found this 3rd-party AWS library called github.com/soto-project/s… which I got working with Digital Ocean, but still, tons of boilerplate and not elegant at all, and still no moderation!
Read 9 tweets
Mar 22, 2022
Making amazing App Store screenshots is one of the highest-leverage things you can do to boost your app downloads and sales for free.

🧵 Here are my 20 tips for making KILLER App Store screenshots:
1/ Don't advertise features, sell a story - put yourself in the shoes of someone who searched for an app like yours and think about how to convince them your app is the #1 solution for their problem
2/ First of all, what keywords drive the majority of your downloads? Use a tool like AppFigures to understand this as that tells you a lot about what kind of app those searchers are looking for
Read 22 tweets
Mar 16, 2022
Surveys are one the best tools in your business toolkit for improving your products and apps. I've surveyed 10s of thousands of users. Here are my top 50 tips for effectively using surveys!
1/ Survey users at consistent points in the user flow. Surveys are incredibly useful for figuring out how changes in product impact user satisfaction over time
2/ If you always survey after onboarding, and you change onboarding every few months or run ads to new segments of users, the results of the survey become very useful for spotting trends over time like "our new onboarding is leading to less user satisfaction"
Read 53 tweets
Mar 11, 2022
One of the biggest mistakes I see devs/founders make when they launch their app is supporting TOO many devices / platforms / and "nice to have" features! Here's 11 reasons you shouldn't do that:
1/ The more surface area of development you need to cover, the less quality and time you can invest in the core user experience of your app
2/ Your app should have one well-designed, thoughtful core user experience that tests your market assumption and allows you to start collecting user feedback so you can iterate and improve it
Read 15 tweets
Jan 12, 2022
Here were my calculations:
a) Wordle is a ripoff of another game
b) Wordle the word isn't trademarked and there's a bunch of other unrelated word apps named the same thing
c) Wow, I'll hack together something on the weekend and see if I can make a buck
I used a similar UI because I made the app in a WEEKEND. I was already working on an update with a different UI. Twitter can be fucking hell scape some times and you all need to calm down because this happens 1000s of times a week with other apps.
This was the perfect storm to publicly crucify me for something that is common. In a week my app would've looked totally different and had way more functionality beyond what original dude did.
Read 13 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us!

:(