Blog
Oct 26, 2026 - 5 MIN READ
Eight Things a Dead Wine App Taught Me

Eight Things a Dead Wine App Taught Me

What I learned building a wine label and wine list scanner, and why I shut it down.

My profile picture

Ryan Prater

There are a lot of wine apps. I built another one anyway, mostly to learn, and then retired it when my assistant bot started doing the job better.

What I built

The app was called Wine Scanner. The idea: snap a photo of a wine label or a restaurant wine list and get back the right bottle, ranked for your taste instead of a critic's.

What it actually did:

  • Label scan. Take a photo, and AI reads the name, producer, vintage, region and type, then matches it against a wine catalog.
  • Lookup for unknown wines. If the catalog had no match, it ran a web-grounded AI search to fill in the details and saved the result, so the catalog grew with every scan.
  • Wine list scan. Up to 10 photos of a menu. It pulled out the sections and wines in order, and if you'd set up a taste profile, every wine got a 0 to 10 match score with a one-line reason.
  • My Taste. You describe what you like in reds and whites, and AI writes a short "You like..." summary that drives the list scoring.
  • My Wines. Scan history, a cellar, and ratings that record what you ate, the occasion and your mood instead of just stars.
  • A wine map. Wine regions across Western Europe, with "where you tasted it" and "where it's from" pins.

Stack: Nuxt, Supabase and Google's Gemini models via the Vercel AI SDK, on Vercel.

Wine Scanner's wine map of Western European wine regions with tasting and origin pins

The wine map. My favourite screen and my biggest time sink. The pins here are demo data, not real tastings.

Wine Scanner's My Taste screen with free-text fields for red and white wine preferences

My Taste: you describe what you like in plain words and the app turns it into a summary used for scoring.

What worked

  • Reading labels is basically solved. Getting text off a photo was the easy part. Matching it to the right wine was the real work.
  • Checking the catalog before asking AI. Cheaper, faster, and it improved with use.
  • Telling the AI to be conservative. The prompts said to leave a field empty rather than guess, for example never inferring a grape from the region. Wrong data is worse than missing data.
  • Scoring a wine list against one person's taste. A menu with colour-coded "this one's for you" badges is a nicer experience than a list of points.

What I learned

Apps vs. assistants

1. The world didn't need another wine app. There are plenty already. I built one anyway, then found that an AI sommelier inside my assistant bot handles most of what I wanted. Photo of a label, a few questions, a useful answer.

2. The map was cool, and expensive. Region shapes, pins and lines between where I tasted something and where it's from took a lot of time. My assistant bot can draw a map like that as an HTML canvas when I ask for it. I put a lot of hours into something that's now a one-line request.

3. Fixed forms don't match how people feel about a wine. I gave ratings a sentiment slider plus fields for food, occasion and mood. Better than stars, but still a static form. A bot can ask follow-up questions specific to that wine: "Was the tannin too much with the fish?" That gets closer to what you actually thought.

Data

4. Looking up scanned labels online worked really well. When the catalog came up empty, a web search filled the gap well. More wine apps should do this.

5. Wine data is locked up. Many wine apps keep their data private because it's their moat. I get why, but it's a shame for users.

6. Wine doesn't fit in neat boxes. There's no formal taxonomy of wine, and every attempt to classify it breaks down fast. Where does orange wine go? It's white grapes made like a red, with the skins left in. "Green wine" (Vinho Verde) isn't a colour at all: it's a region in Portugal, and it comes in white, red and rosé. White Pinot Noir is a white wine from a red grape. And what is rosé, exactly? Usually red grapes with brief skin contact. In France you generally can't make still rosé by mixing red and white, yet that's how most rosé Champagne is made. Grapes change names at the border (Syrah and Shiraz, Grenache and Garnacha, Pinot Gris and Pinot Grigio), and every country has its own appellation system (AOC, DOC, AVA) that doesn't map onto the others. My app had a draft taste tree (Red > Light & perfumed > Pinot Noir & kin) that I never finished, and this is part of why. A conversation doesn't need the boxes to be right. It just talks about the wine in front of you.

Ratings

7. Not all ratings are equal. There's a big difference between ratings from general users and ratings from people with a trained palate. Lumping them together mixes two very different signals.

8. How much you've had to drink affects the rating. This is my own observation, not something I measured: the same wine can get a different score on the third glass than on the first. A rating without that context is partly a rating of the evening.

Why I shut it down

Honest answer: it never had real users. Even my own account had no saved data by the time I retired it, so there was nothing to migrate. Meanwhile, the sommelier in my assistant bot covered the core use case with no app to open, no forms and no tabs.

I also let scope grow faster than usage. Cellar, ratings, recommendations, a map and a taste tree all got built before anyone used the core scan. Next time: one flow, real users, then expand.

Apps vs. assistants

I'm shutting down another app for the same reason: a conversation turned out to be a better interface than screens and forms. I don't think apps are going away tomorrow, but for personal, fuzzy, "help me decide" problems like picking a wine, an assistant that remembers you and asks good questions is hard to beat.

Copyright © 2026