1,300+
Paying customers in the first 30 days
Olá Quest by Lisbob: Gamified European Portuguese Learning App, From Wireframes to 1,300+ Paying Customers in 30 Days

The Challenge
The category gap
Lisbob is the digital assistant for expats moving to Portugal, Spain and Italy. It runs a content and services business. It helps people with admin (NIF, NHR, NISS, AIMA, Finanças). It helps them settle in (banking, housing, mobility, language). And it has built a large owned audience: about 40,000 members in dedicated Facebook groups, plus a YouTube channel for Portuguese expats.
For that audience, language was the biggest pain point. And the most poorly served. Most apps teach Brazilian Portuguese. Lisbob's users live in European Portugal. The two are different. Different enough to make a Brazilian Portuguese learning app useless at the bakery. Useless at the tax office. Useless at the AIMA appointment.
The brief was simple. Lisbob wanted a European Portuguese learning app built for expats. Not a generic tool. A focused, branded, monetized European Portuguese learning app its community could adopt on day one. A European Portuguese learning app that felt native to Portugal. Not Brazil.
This kind of brief is exactly what we build at Stellarwind for premium expatriation agencies.
The strategic intent
Lisbob came to us with a clear goal. And a hard execution problem.
The goal:
- Convert the Facebook + YouTube audience (≈ 40,000 members) into a paying user base
- Own a category, European Portuguese (PT-PT) learning, where mainstream apps default to Brazilian
- Ship a revenue-generating European Portuguese learning app, not another freebie
- Target audience set in the brief: expats aged 30 to 65, mostly beginners, planning to move to Portugal
The execution problem
Building a European Portuguese learning app for this audience meant solving six problems at once.
- A consumer-grade mobile feel on day one. iOS and Android. Native quality.
- A gamification engine strong enough to compete with the apps users already use. XP. Levels. Badges. Streaks. Real-time leaderboards.
- A pedagogical engine driven by Lisbob's expert content
- A European Portuguese voice layer. Native pronunciation. Playback control.
- A monetization layer. Turned on without rewriting the app.
- A delivery process tight enough to launch on stores. Not just to demo.
The scope below is what we built. None of it was descoped.
Our Solution
A fixed-scope, milestone-based delivery
We delivered Olá Quest under a fixed-scope, milestone-based engagement, governed by a Service Agreement. Scope was locked, revisions were bounded per milestone, and payments were tied to milestone acceptance. The client always saw what came next.
This is the model we use on every premium build. Read more on our services page or browse our other case studies.
The build ran from kickoff through design, gamification, voice, and QA, to the public store launch, with a monetization layer added once the core product had shipped. Every milestone closed with formal client acceptance, and the full scope shipped with zero cuts.
What we built, grouped by business value
A gamification engine that drives daily return
A European Portuguese learning app needs users back every day, or it dies in week 2. We built the full retention loop.
- XP engine with progression logic
- Auto level-up with custom popups
- Badge engine with auto unlock
- Achievements page with earned and locked states
- Streak counters and weekly progress tracking
- Theme progression with unlock system
A real-time competitive layer
Competition keeps a learning app alive. We built it natively.
- XP-based global ranking
- Real-time leaderboard on Firebase Realtime Database
- All-time, weekly, and monthly filters
- Auto resets via Firebase Cloud Functions
- User position tracking and notifications
A native European Portuguese voice layer
This is the feature that justifies the entire positioning of the app. Mainstream apps cannot offer it. They default to Brazilian.
- Google Cloud Text-to-Speech tuned for European Portuguese (PT-PT)
- Pronunciation practice with audio controls
- Voice playback with speed control
A complete dashboard and content surface
- Custom dashboard with XP, level, badges, and streaks
- Reusable component library
- Theme selection and unlock progression
- Notification and popup system
A monetization layer
Added once the core product had shipped, designed to switch on without rewriting the app.
- RevenueCat SDK integrated into Flutter
- Subscription products and entitlements configured
- Paywall UI and purchase flows
- Subscription status checks and content gating
- App Store + Google Play in-app purchase products
- Restore purchases functionality
A production launch
Cross-device testing, performance and security checks, ASO, legal pages, and a 7-day post-launch warranty were all part of the delivery.
Architecture & stack
The European Portuguese learning app runs on this stack.
| Layer | Technology |
|---|---|
| Mobile runtime | Flutter (iOS + Android, single codebase) |
| Authentication | Firebase Auth |
| Persistent data | Cloud Firestore |
| Real-time data | Firebase Realtime Database |
| Scheduled logic | Firebase Cloud Functions |
| Push notifications | Firebase Cloud Messaging |
| Voice synthesis | Google Cloud Text-to-Speech (PT-PT voices) |
| Monetization | RevenueCat |
| Distribution | App Store + Google Play |
| Design system | Custom UI kit, Fredoka + Rubik typography |
The stack was picked for one reason. It is the right balance of speed and ops for a launching consumer app. Flutter keeps iOS and Android in one codebase. Firebase covers real-time and scheduled work without separate infrastructure. RevenueCat removes the largest source of edge cases in cross-platform billing.
If you are exploring a similar European Portuguese learning app, or any branded consumer mobile product, we can walk you through the trade-offs. Book a strategy call. Or check our services for relocation agencies. We will tell you honestly whether this stack fits your context.
The Results
Business outcome
1,300+ paying customers in the first 30 days post-launch.
A consumer mobile app rarely converts a content audience into paid users at this rate inside a month, especially on a first product, and especially on a niche European Portuguese learning app for expats. Olá Quest did.
Delivery outcome
- The full engagement was delivered as a fixed-scope, milestone-based build, from contract signature to public store launch
- Every milestone was completed and accepted, including the monetization layer added after the core product shipped
- Zero milestones descoped. Zero tasks dropped.
Strategic outcome
Lisbob now owns a branded, monetized European Portuguese learning app. It converts its expat audience into paying users, with no dependence on third parties for monetization.
The app sits in a category where major incumbents do not compete on the same variant. That gives Lisbob structural defensibility on its core ICP.
Post-handover, the app has continued to evolve under Lisbob's ownership. What we shipped was extensible, not throwaway.
Why this European Portuguese learning app works
A typical language app converts 1 to 3% of free users to paid in the first month. Olá Quest cleared that bar fast. Three reasons.
The category is structurally underserved. Lisbob owned the audience already, so we did not have to find users, we had to convert them. And the product had paying intent built in from day one, not bolted on later.
That is the playbook. Pick a real category gap. Build a focused product. And ship the monetization layer with the product, not after.
Project meta
| Field | Value |
|---|---|
| Industry | Expatriation |
| Build duration | 3 months |
| Platforms | iOS + Android (App Store + Google Play) |
| Languages of delivered V1 | English UI, TTS in European Portuguese |
| Post-launch warranty | 7 days |
| Project status | Completed and live in production |
Want to ship a similar European Portuguese learning app, or any branded mobile product for your audience? Explore our other case studies, our services, or book a strategy call. We will tell you honestly whether this approach fits your context.
Get a Clear Plan for Your Brokerage
Schedule a strategy call to discuss your current lead flow, conversion challenges, and what a custom AI system can do for your numbers.
Book a Strategy Call