How Firefly works
No secret sauce. Just a shown method.
Firefly finds the flights worth flying. It searches flight providers, normalises every fare into one shape, scores each one against the route’s own recorded history, and then sends you to the airline or provider to book. It does not sell tickets, take payment or hold a fare — and it never invents a price.
The Deal Score
A number you can argue with.
Every fare is scored from 0 to 100. The score starts at a neutral 50 and moves on 7 declared factors, weighted as below. Nothing is hidden, and the same breakdown appears on every deal page.
Versus the typical fare
up to ±30 ptsWhat this route and these dates should reasonably cost, modelled from distance, demand and cabin. This carries the most weight on routes we've only just started watching.
Position in recorded history
up to ±34 ptsWhere the fare sits inside the distribution of prices Firefly has actually observed on the route. On a well-observed route this becomes the dominant factor.
Journey time
up to ±10 ptsMeasured against the fastest realistic itinerary on the same route. A cheap fare that costs you eleven hours is not the same deal as a cheap fare that doesn't.
Connections
up to ±9 ptsNonstop earns credit; each additional connection costs some.
Seasonality of the dates
up to ±6 ptsWhether the departure sits in a peak window or a trough. A good price in high season is a better find than the same price in a quiet month.
Carrier
up to ±4 ptsA small adjustment for service tier. Deliberately small — it is a tiebreaker, not a verdict.
Price stability
up to ±4 ptsHow much the route's fares have been moving. A steady route makes a low price more meaningful.
The model gets better on its own.
Below 6 recorded prices on a route, Firefly treats its own history as directional at best and leans on the structural baseline instead — and reports low confidence while it does. From 40 observations upward, the observed distribution carries almost all of the weight. The blend between the two is a plain function of how much we’ve seen, so the score sharpens as the ledger grows. There is no retraining and no black box.
Recorded, never invented.
Firefly stores the price of every fare it sees, with a timestamp. Averages, lows, percentiles and trends are computed from that ledger and nothing else. Where a route is too thin to say anything useful, the deal page reads “Not enough historical data yet” rather than drawing a chart out of guesswork. Back-filled history would make the product look more confident and be worth less.
Buy or wait.
Where there is enough history, Firefly offers a view on whether a fare is worth taking now. It reads the fare’s percentile and the route’s recent movement, and it shows both. It is an estimate drawn from observed prices — not a prediction we stand behind, and never a guarantee that a price will still be there in an hour.
Score bands
Exceptional price
90 – 100A rare fare worth noticing.
Excellent price
80 – 89Well below what this route usually asks.
Good price
70 – 79Priced better than most of what we see here.
Fair price
60 – 69Reasonable, without being remarkable.
Typical price
Below 60About what this route normally costs.
A high score means a fare is good for its own route. A $60 hop that is always $60 scores modestly; a business fare at $1,900 that usually sells for $3,000 scores well.
Booking
Firefly hands you over. It doesn't take over.
Comparison is where Firefly is useful. The purchase belongs to the airline or booking provider, and we're explicit about the moment it changes hands.
You leave, and you're told
Selecting a fare takes you to a handoff page that names the provider and the price before anything navigates. Nothing happens silently.
No checkout, no card
Firefly has no basket, no payment step and no card storage. It cannot issue a ticket or a boarding pass, and it never claims to have booked anything.
Prices move
A fare is the provider's to confirm. If it has moved by the time you arrive, that is the provider's live price — and Firefly will happily find you the next-best option.
Where the fares come from
One shape, whatever the source.
Every provider is an adapter behind one interface, and every fare is normalised into a single internal result before it reaches the interface. Swapping or adding a provider changes nothing about the product you see. Provider requests are made server-side only, and credentials never reach the browser — not in a script, not in a URL, not in a redirect.
Firefly also ships a complete demonstration data layer so the whole product can be explored without credentials. Demonstration fares are realistic, deterministic and labelled every time they appear. They are never dressed up as live prices.
This deployment
- Requested mode
- mock
- Serving fares
- mock
- Live prices
- No — demonstration