← All work
Consumer AppTelecomGrowth & ActivationData Strategy

From concept to 5M downloads, a consumer product built to become an enterprise data asset

Opensignal, Product Design Lead, 2016–2021

Meteor speed test app screens on mobile devices
0→5M
Downloads
4.8★
App rating
~30%
Of enterprise dataset
#1
Retention (all apps)

Context: grow the audience, feed the data pipeline

What I owned: Concept (pitched during my hiring process), product strategy, user research, feature prioritisation, retention metrics, and the consumer-to-enterprise data pipeline. Zero to 5M downloads, Opensignal's highest-retention consumer product.

Opensignal's existing consumer app was built for technical users, signal maps, cell tower data, network logs. It served a niche and wasn't growing. The company needed a new product that could reach a mass audience of non-technical users while simultaneously generating high-volume, high-quality data for Opensignal's B2B analytics products, the real revenue engine.

I pitched the concept for Meteor as part of my hiring process. Within weeks, we were building it. I owned the product from zero to launch and beyond.

Discovery: the insight that shaped everything

User interviews and competitive analysis surfaced a consistent problem: speed test results are meaningless to most people. Showing a user "47.3 Mbps" tells them nothing actionable. What they actually want to know is: can I stream Netflix? Will my video call drop?

Confusing speed test results
The category-wide problem: raw data with no actionable context

Competitors competed on speed and feature depth. None had resolved the core communication problem. That gap was the product opportunity.

Ookla Speedtest
Ookla Speedtest
4GMark
4GMark
Ping Test
Ping Test
User flow diagram
Core flow mapping: from first open to actionable result

Product strategy: three bets that drove the product

The product was built on three strategic decisions I defined early and defended through development:

Ship now Validate first Quick wins Cut / defer effort → impact → App-by-app grades One-tap test Zero onboarding Network history B2B data pipeline Share result Cut Deferred features Node size = strategic weight Dashed = deliberately cut or deferred

Bets on a grid, how I prioritised Meteor's features. The biggest nodes shipped first; dashed nodes were cut or deferred to keep the core loop friction-free.

Bet 1, Results that mean something: Instead of raw Mbps numbers, grade your connection per activity, streaming, video calls, gaming, browsing. A Great/Good/Poor rating per use-case gives an immediate, actionable answer. This wasn't a UX decision, it was a positioning decision that unlocked a demographic that would never install a traditional speed test.

Bet 2, Zero-friction core loop: Open → tap → results. No account, no settings, no tutorials. Every interaction removed was a retention decision. I framed success metrics around repeat usage from the start, not installs.

Bet 3, Consumer app as B2B data asset: Reaching 5M non-technical users meant new geographic and demographic coverage for Opensignal's telecom dataset. This made Meteor strategically valuable to enterprise product even if it never became a direct revenue line.

Meteor app results showing app-by-app performance grades

The prototype flow I validated before engineering started:

Prototype onboarding
Prototype start test
Prototype ping test
Prototype results

Execution: owning the product, not just the brief

Retention as the north star: I defined Meteor's success metrics around repeat usage from day one, not installs. This shaped prioritisation throughout: features that added depth without increasing friction were in; features that complicated the core loop were out. Meteor became Opensignal's highest-retention consumer app.

Feature prioritisation post-launch: I led post-launch iterations using user survey data and usage analytics, running dot-voting sessions with the team to cut scope and focus effort on the highest-impact changes.

Prototype-driven validation: The high-fidelity prototype I built before engineering started set a precedent at Opensignal. Leadership saw that polished prototypes could validate product direction and reduce expensive rework. It became a standard practice for new products.

Dot voting session
Feature prioritisation: dot-voting session to cut scope and focus post-launch iterations
Meteor on Google Play
4.8★ on Google Play, maintained across millions of reviews
User survey results
User survey data driving post-launch feature decisions

Outcomes: what it delivered

0 → 5M downloads north star #1 retention repeat usage 4.8 ★ app rating Zero friction core loop App grades clarity lever ~30% B2B dataset share Input metrics that compound toward the north star
0 → 5M
Downloads, highest organic growth of any Opensignal consumer product
4.8★
App store rating maintained across millions of reviews
~30%
Of Opensignal's enterprise dataset, consumer reach created real B2B data value
#1 retention
Highest retention rate across all Opensignal consumer apps

Meteor proved that a consumer product built around the right strategic bets could be both a standalone success and a material contributor to enterprise revenue.

What I'd do differently: if I ran it again

I'd push for A/B testing infrastructure from day one. We made good prioritisation decisions based on qualitative research and surveys, but lacked controlled experiments at scale in the early months, which meant some calls took longer to validate than they should have.

I'd also formalise the data strategy earlier. The consumer-to-enterprise data pipeline emerged as a happy outcome rather than a designed intent. Being deliberate about it from the start would have let us optimise for enterprise data quality even sooner.

Next case study
Reframe, turning an optician's instinct into an explainable product