Descent
Reduced flight search time from 30 minutes of manual checking across multiple airlines and airports to a single setup that runs automatically in the background.
Product Design • Live

Descent
Find the cheapest flight across every airline and airport, automatically
Project context
Role | Solo product designer. End-to-end ownership: product strategy, UX research, information architecture, UI design, and usability testing. Developer (Pietro Messineo) handled iOS engineering. |
Team | Ryan Majoor (design) and Pietro Messineo (iOS developer) |
Timeline | January 2026 → March 2026, approximately 10 weeks |
Platform | iOS |
Tools | Figma, TestFlight |
Project type | 0→1 product |
The problem
Finding cheap flights meant manually checking 4–6 airlines × 2–3 airport combinations × multiple travel dates — then remembering which options were cheapest across separate sessions, since prices change between visits. A single itinerary search could take 20–30 minutes of tab-switching and mental arithmetic, with no guarantee the best option had been found.
Descent eliminates the search entirely. Users set a route and a price limit, and the app checks all airlines and airport combinations multiple times a day — notifying them only when prices drop below their threshold.
How we discovered it: Personal experience as frequent travelers, validated with informal interviews with 8–10 friends and family members who travel regularly. All recognised the behaviour immediately and described the same multi-tab, multi-session pattern.
How Might We: How might we surface the most critical flight info so users can be informed about the best deals without having to search endlessly?
Goals & success metrics
Business goal: Launch with core functionality, measure organic adoption and conversion to Pro, and use early user behaviour to identify where to invest next.
User goal: User can understand a deal and decide whether to act in under 10 seconds.
What we measure:
Price limits inserted (are users serious about setting one, or skipping it?)
Price alerts sent out
Price alerts tapped on
Google Flights links clicked
Alerts created
Alerts created with similar/nearby airports
Churn on recommended returns from home airport
App Store ratings and written reviews
Design process
Early explorations
Pietro had built a functional prototype to prove the technical concept — dense, data-heavy, no visual hierarchy. I stripped it back to first principles: what does a user need to see at a glance to know whether a deal is worth acting on?
By showing testers different variations, we eliminated everything but origin, destination, alert status, and price limit + current price. All other information was moved to a detail view — specific itinerary, alternative flights and prices, and a deep-link to book. The list stayed clean; the depth was there for users who wanted it.
Key decision
During testing, the alert cards had colour-coded containers — they'd started as a Figma experiment to test colour association but made it into the beta because Pietro was moving fast. Three out of five testers said the coloured bubbles should stay, including Pietro.
I pushed back. My argument: users only preferred the colour because they'd been conditioned to it during testing — they associated colour with meaning that wasn't actually there. The cleaned design, without the distraction, would let the real hierarchy do its job.
Post-launch, the app has been consistently praised for its minimalism and legibility.
Testing & changes
We initially tested with long airport lists that included a search function. Early on I noticed that general users don't necessarily know that New York's airport is JFK, or that Istanbul has two airports — one referred to as SAW. Being a regular flyer myself, I knew these shorthand codes, but most users didn't.
We responded by adding:
Natural language searching with on-device AI that parses airport lists and maps them to cities
Interactive maps showing airport locations and nearby alternatives
This made the airport selection step accessible to casual travelers, not just frequent flyers.
Results
4,000 downloads within the first 3 months of launch — entirely organic, with no paid marketing and no campaign. 18 paying Pro subscribers. 5-star reviews across 20 countries.
Growth to date came from a single post by Pietro at launch and one organic mention in an Instagram roundup. Structured marketing has not yet begun.
What I'd do differently
Build a simple content and launch plan before release — even a lightweight one. The organic traction suggests real demand; a coordinated launch could have converted that into significantly higher early adoption.
/