Technology

Cuisine is the wrong unit.

Ask someone what food they like and they will name a cuisine. It is almost useless information. Two people who both say “Thai” can disagree about every dish on the menu, because what they actually differ on is heat, sourness, texture and sweetness — and nobody describes themselves that way.

The idea

TasteTwins models the dish, not the cuisine and not the restaurant. Each dish is described as a set of sensory intensities — how much heat, how much acid, how much crunch, how much savory depth — and your palate is described in the same terms. Learning your taste means finding out where your coordinates sit. Matching you to a dish, a venue or another person is then a question about distance in that space, which is a well-posed question with a real answer.

Doing this properly needs a vocabulary rich enough to describe food that is not from the Western canon. That is the hard part, and it is why we started with Sierra Leonean and West African cooking rather than with the easy cases.

Four layers

Layer 1

Describe the dish

Every dish in the catalog is given a sensory profile: intensity values across the taste dimensions, plus categorical descriptors for the things that are kinds rather than amounts — preparation method, base ingredient family, and so on. This is the foundation, and it is also the slowest and least glamorous part of the work.

Layer 2

Learn the palate

You rate dishes on a seven-point scale, from strongly disliked to strongly liked. Each rating pulls your palate coordinates toward or away from that dish’s profile, weighted by how strongly the dish expresses each dimension. A dish that is emphatically one thing teaches the model more about that thing than a dish that is mildly several. Enough ratings and the shape of a palate emerges — including the parts you would never have thought to state.

Layer 3

Explain the result

After a meal you can select Taste Drivers — short, fixed descriptions of what actually made it good or bad. This does two things. It gives the model a correction signal that a star rating cannot carry, and it lets the app tell you why a recommendation was made, in words, instead of asking you to trust a number. A recommendation you can argue with is a recommendation you can improve.

Layer 4

Find the overlap

Once palates are points in a shared space, so is the overlap between two of them. The app finds people whose taste genuinely intersects yours, identifies the region where you agree, and recommends into it — which explores shared preferences beyond two lists of favorite restaurants. Then it helps you turn that into an actual plan, because the failure mode of “we should eat sometime” is never the food.

What is actually built

The recorded catalog snapshot below was collected on . It describes catalog inventory at that time:

  • Place records1,537
  • Menu-item records956
  • Image records2,005
  • Rating scaleSeven points, strongly disliked to strongly liked
  • PlatformNative mobile app · iPhone in private testing · Android in development
  • Data layerPostgreSQL with configured row-level access policies

Image records include 1,999 AI placeholders, 4 user uploads, and 2 Wikimedia images. The four current user uploads are marked unreviewed in the source catalog. These counts describe catalog inventory, not active users, verified restaurants, fully described dishes, or model accuracy. Read the dated counts and definitions (JSON).

Numbers we are not using

The figures are a historical catalog snapshot. They do not establish global coverage, active-user adoption, or a measured matching result. New figures will be published with their own date and counting definitions when verified.

Built for the food that gets left out

The Sierra Leonean seed dataset is a deliberate stress test rather than a market. We describe a set of dishes with their Krio names, ingredients and preparation methods, then check whether our own model can tell them apart. Where it can’t, we have found a missing dimension.

Concrete examples of what that surfaces: a model with a single “fat” axis cannot distinguish red palm oil from olive oil, though they taste nothing alike. A model with no viscosity dimension cannot tell a thin broth from a stew ground to a heavy paste. A model that reads ingredient lists literally misses dried fish used as background seasoning — which is a flavor gap and, for someone with a fish allergy, a safety gap.

These examples guide the vocabulary we want to evaluate. Broader usefulness is a goal to test, not a demonstrated improvement across all foods.

Testing evidence

The iPhone beta is invite-only. New testers join in waves from the beta list. We don't publish active-user or accuracy figures yet.

Applied AI, with explicit limits

The implemented food-analysis pipeline includes AI-assisted extraction of structured menu information and image analysis, alongside sensory representations and matching rules. Output quality depends on the source evidence and needs review. These capabilities do not establish validated matching accuracy or clinical usefulness.

Where the computation goes

Two things in this product are genuinely expensive to compute, and both get harder as it grows: describing dishes at scale — extracting sensory structure from menus, text and photographs — and searching a high-dimensional palate space fast enough to answer a query while someone is standing on a street deciding where to eat. Neither is a research novelty. Both are engineering problems where hardware matters, and they are the reason this is built as a data and compute problem rather than as a list of restaurants with a filter on top.

What this is not

  • Not genetics. “Taste DNA” names your learned preferences. There is no genetic test, no sample and no genetic data. We have been asked enough times that it is now in the privacy policy too.
  • Not a medical or nutritional tool. It does not diagnose, treat, prescribe a diet or give clinical advice, and it is not a substitute for a professional who does.
  • Not a validated instrument. Matching is a development capability and has not been through a designed validation study. No measured accuracy or clinical meaning is claimed.
  • Not an allergy safeguard. Dietary filters use data that can be incomplete or out of date. Confirm ingredients with the venue. Always.
  • Not what the demo shows. The browser demo uses a deliberately simplified arithmetic to illustrate the interface. It is not the production engine and its scores are not calibrated probabilities.

Going deeper

This page describes the architecture at the level that is useful without being a specification. The exact dimension set, the weighting scheme and the update rule are internal, and are shared under a confidentiality agreement with research and technical partners rather than published. If you are one, or would like to be, write to hello@tastetwins.app and say what you are working on.