The Journal

NO. 03 · The Journal

Coffee discovery has a stale data problem

A huge coffee catalogue sounds useful. Until you try to buy something from it.

JACK - FOUNDER · · 6 min read

There are coffee databases online holding thousands, sometimes tens of thousands, of coffees. On the surface that sounds brilliant. More coffee should mean more choice.

The trouble is that specialty coffee has an awkward habit of changing faster than the databases built to catalogue it. Lots sell out. Roasters rotate their ranges. New harvests arrive, old product pages quietly disappear, and before long a big chunk of that catalogue is really just a history book.

A catalogue containing 10,000 coffees isn't very useful if the coffee you want to try disappeared two years ago.

That's the problem.

Coffee isn't a static product

Specialty coffee is seasonal by nature. What a roaster is selling this month might not be there next month, and that's not a flaw in how independent coffee roasters work, it's the whole point of buying fresh.

Even when a familiar farm or producer comes back around, the coffee itself can be different. Different harvest, different lot, sometimes different processing, usually different tasting notes. Same name on the bag, different drink in the cup.

So coffee discovery can't really work like a static encyclopaedia. It has to reflect the market as it actually exists, not as it existed whenever somebody last updated the spreadsheet.

Which is why coffees have versions

This was in BeanScore from the start. When a coffee changes, whether that's a new harvest, a new lot or a tweaked recipe, it doesn't overwrite what came before. It becomes a new version, and your review stays attached to the version you actually drank.

That matters in two directions. The community score is measured across all versions, so you still get a sense of how a coffee is regarded overall. But the version you rated is the one that feeds your Taste DNA.

Which is the honest way round to do it. You can only tell us what you thought of the coffee in front of you, not the one somebody else drank eighteen months ago.

You could argue that pooling versions muddies the score, and that a brilliant lot shouldn't prop up a weaker one. I'd push back on that. If it's the same bean sold under the same name, there's a level of consistency and quality you're entitled to expect. So it's right that every version feeds into the community score, and right that a drop off shows up there.

Discovery needs a relevance layer

BeanScore isn't trying to collect as many coffee names as possible. It's trying to answer a more useful question.

What should I try next?

For that answer to be worth anything, the coffee has to suit your taste and it has to be buyable. Which means specialty coffee recommendations need to take into account things like:

  • whether the coffee is still active
  • whether it suits your Taste DNA
  • whether it fits how you brew
  • whether the roaster is still selling it
  • whether you can go and try it now

That's why BeanScore is being built around live coffee discovery. If a coffee is surfaced in Discovery, the intention is simple: you can click through and buy it.

And before you've rated your five, you aren't left staring at an empty feed. You get coffees the community rates highly, picked by the same recommendation engine, and it sharpens as soon as you start telling it what you like.

So how does BeanScore know what's live?

Fair question, given everything I've just said about stale data.

BeanScore pulls live data from roasters' own websites and checks stock levels regularly. When something sells out, the system flags it. That coffee then gets archived rather than deleted, and it never appears in the discovery feed again.

Archived isn't gone though. Every review attached to it survives, and you can still rate a historic coffee if you've got a bag of it at home. It just won't be recommended to anybody, because recommending a coffee nobody can buy is the exact problem we're trying to avoid.

Going the other way, only coffees that are findable and active now can be added to the catalogue in the first place. Nothing gets in as an archive entry.

There's a human layer on top of that. Users can flag anything they spot that looks wrong, and the BeanScore admins push regular updates to the catalogue. We're working towards full automation, and I'd rather say that plainly than pretend we're already there.

Your history should be permanent. Your recommendations shouldn't be.

None of that makes old coffees useless. Quite the opposite.

Your rating history is what builds your Taste DNA. It tells you what you've tried, helps you remember what you loved, and shows patterns you'd never spot on your own. That record should stick around forever.

Here's the part that makes archiving work. Taste DNA doesn't operate at the level of individual coffees, it operates at the level of attributes. Flavour, origin, processing, roast level. So a five star rating on a Kenyan washed lot that sold out last spring still pulls its weight, because what it told us wasn't really about that bag. It was about you.

Which is the difference between your history and what the platform puts in front of you next. Your history should be permanent. Your current coffee recommendations should be, well, current.

A live catalogue beats a big one

The best coffee database isn't necessarily the one with the most coffees in it. It's the one that understands which coffees matter right now.

A smaller catalogue of active, relevant coffees is more useful than a huge archive full of dead ends. That's especially true in specialty coffee, where harvests change, lots sell out and roasters rotate constantly. A live coffee catalogue has to move with them, otherwise it's just a very well organised list of things you can't have.

Keeping it fresh means working with roasters

There's a limit to how fresh a catalogue can stay if it's only ever looking in from the outside.

So as BeanScore grows, the plan is to work with independent coffee roasters directly. New releases go in faster, versions get updated as they change, and the catalogue keeps pace with what's actually on the shelf rather than trailing a few weeks behind it.

Roasters know when a lot lands and when it's gone. It makes no sense not to have them involved.

To be clear about what that does and doesn't buy them: working with BeanScore gets a roaster's coffees into the catalogue faster and keeps them accurate. It has no influence on the algorithm. Ad placement is something we'll offer further down the line, and that's a separate thing entirely from what your recommendations are built on.

Available now, but available where?

Worth being clear about this, because "live" means nothing if the coffee is live three thousand miles away.

BeanScore has launched with a catalogue of popular coffees from UK independent roasters, and it'll expand worldwide from there. If you're outside the UK you can still use the site today by setting your location, and you choose whether you want to be recommended coffee local to you or coffee from anywhere.

What BeanScore is actually trying to answer

BeanScore isn't trying to answer how many coffees have ever existed.

It's trying to answer what you should drink next. And that answer has an expiry date on it.

A recommendation has to be two things at once: personally relevant, and currently available. Drop the second one and even a perfect recommendation turns into trivia. That's the whole reason the live layer matters, and it's what makes this a discovery system rather than a coffee database with a search bar on top.

If you want to find specialty coffee you can actually buy now, that's the bit we're building.

Discover live coffees on BeanScore →