
Lucky Number App
A culturally localized iOS app I built to help Singapore Pools lottery players get latest results and discover their lucky numbers. Try here 🔗
This was not a great project, and these are some of my learnings.
"Existing apps are ugly. I can fix that"
Consider:
- Why are these apps so outdated and uninspired in design, yet have so many reviews?
Along the way, I realised the target audience, older people who would use these apps, probably don't care because they aren't the type to obsess over our standards of user experience - apps simply have to be functional. They aren't likely to find alternatives and switch over to a new app too, as long as their current app works.
"I found a niche. I can win"
I knew that it would be futile to try to win the possibly hundreds of lottery result apps in the App Store. This led me to think of a lottery player's journey - where and how could I serve them?
From my experience, I know that many lottery players rely on more than chance - they draw inspiration from dreams, license plates, family birthdates, or seek guidance from temples and fortune-tellers to select "lucky" numbers. I saw an opportunity to digitize this behavior.
But I didn't manage to crack how to really sell this to users. I believe that for older, more traditional audiences, a digital experience can never replace the ritual of visiting temples or human fortune tellers. While I wanted to reinterpret the cultural logic behind it in a lightweight, accessible way for a mobile context, I never really validated that people, regardless of age group, needed it.
- Older users are probably less likely to use a mobile app for lucky numbers, due to accessibility and tradition
- Younger users that are more mobile-native, are probably less likely to demand a ritualistic/superstitious way of getting 'lucky' numbers
That said, it was a good experience building and launching an iOS app for the first time. I also made $12 as of press time, so you could say I am now an internet entrepreneur.
Even though I knew this app was doomed, I thought this was a good opportunity to have my own product to apply some of my learnings from the Reforge Growth Series, I experimented with:
- Acquisition Loop: Shareable number cards designed to spark conversation and virality (e.g. "My lucky numbers for the $12M TOTO draw"), with the app name and logo attached for viewers to find the app
- Engagement Loop: Timely, contextual push notifications aligned with jackpot events and cultural dates (e.g. $12M draw today! Get your lucky numbers now")
Did these work? I'm not sure:
- Shareable number cards: Usage rate was low (<10%)
- Push notifications: The user base was low so the reach of my notifications was naturally low too. I wouldn't analyse too much into notification open rates, app usage rates on notification days etc., as it's just not statistically significant.
However, I revamped the home screen at the end of July, as well as launched an In-App Event on the Apple App Store. I have no idea what happened, because Apple's data told me that the In-App Event drew a total of 2 clicks over an entire month (lol) but my app metrics rocketed on a MoM basis. So all I can say is that I am now a UX expert and my home screen redesign was a stroke of genius.
📈 App Performance
August MoM
September MoM (as of 25 Sep 2025)
Update 25/09/25
I finally tried integrating a LLM. It was a great learning experience - I always envisioned it as just getting the API key and calling it whenever. But in the course of integration, I thought about cost, which led me to discover the world of fine-tuning and evals. I think I did a terrible job because my app AI gives random '5D' suggestions sometimes. I really don't think you can buy that from Singapore Pools but what do I know.
Another interesting exploration was how to handle context, which made me better appreciate consumer-facing LLMs like ChatGPT. I had to find a way to remember context while optimising for cost as well, so that users could have meaningful conversations that did not in essence reset every message.
Other than cost per call and context windows, this little exploration into LLM APIs also finally pushed me to add social authentication to the app. I wanted to monetise the AI feature by selling credits (a somewhat familiar model for AI applications) so I needed a way to remember the user's credit balance even across devices/installs. Funny enough, the biggest challenge was how to get the right image assets for the 'Sign in with Apple' and 'Continue with Google' buttons, which required some Figma kungfu (I refuse to believe that Apple/Google do not provide responsive assets so I can only conclude that I implemented it wrongly, but it works).