Restaurant Picker

Add the places you would actually eat at, filter by price, distance and delivery, then let the wheel settle dinner.

Runs in your browser No signup Nothing uploaded

Selections are generated locally in your browser using the Web Crypto API when available. The result is chosen before the animation starts, so how the animation looks can never change what is picked.

Loading the restaurant picker…

What is the Restaurant Picker?

The Restaurant Picker works from your own shortlist rather than a map database. You add the places you already like — with a price band, a distance and a few tags — and the tool filters and picks from those. That means the results are always somewhere you would genuinely go, which is not true of a random pick from an entire city.

There is no map API, no location request and no third-party data. Your list stays in the page, and you can export it as a JSON file to keep or move to another device.

How to use it

  1. Add each place: name, price band, distance and any tags such as “pizza” or “vegetarian”.
  2. Or press “Load example” to see how the list works, then replace it with yours.
  3. Set tonight’s filters: maximum price, maximum distance, delivery only, and anything to exclude.
  4. Press Pick to spin the filtered list.
  5. Export your places as a JSON file so you do not have to type them again.

How the random selection works

The filters are applied first, producing the eligible list. The winner is then drawn from that list with an equal chance for every place, using the same crypto-backed selection as every other tool here. Filtering never biases the draw — it only decides who is in it.

The full algorithm — including the rejection-sampling step and the wheel stop-angle calculation — is written out on the methodology page.

Practical examples

  • Settling a Friday takeaway argument between six regular options.
  • Choosing lunch near the office within a ten-minute walk.
  • Picking a delivery place when nobody wants to go out.
  • Rotating through a “places we keep meaning to try” list.
  • Choosing where a group eats when everyone is being polite about it.

Available options

  • Price bands from $ to $$$$.
  • Distance in whatever unit you use.
  • Delivery flag and a delivery-only filter.
  • Free-text tags with an exclusion filter that matches names and tags.
  • Export and import your places as a JSON file.
  • Wheel or instant pick, sound and animation controls.

Privacy

Your restaurant list never leaves the page. Everything you type stays in this browser tab. There is no account, no upload step and no server-side copy of your list: the draw runs in JavaScript on your own device. Nothing is written to browser storage unless you explicitly save a list or tick the option to keep your draw history, and both can be cleared at any time from the privacy page. No location permission is requested at any point.

Full details are in the privacy policy, which also has a button that deletes everything this site has stored in your browser.

Fairness and limitations

Every place that passes your filters has the same chance — the tool has no partnerships, no sponsored placements and no reason to prefer one restaurant over another. What it cannot do is verify anything about the places themselves. Tags such as “vegetarian” or “gluten free” are just words you typed, so they are not an allergen check. Always confirm ingredients and preparation directly with the restaurant.

Frequently asked questions

Does it find restaurants near me?

No. It works from the list you build, which is why it never asks for your location and never contacts a mapping service.

Can I trust the dietary tags?

Only as far as you trust your own notes — they are free text you entered. For allergies, always check with the restaurant directly.

How do I keep my list?

Press “Export places” to download a JSON file, then “Import places” to load it back later or on another device.

Are any of these restaurants sponsored?

No. There are no restaurant listings on this site at all — every place in the picker is one you added.