Grocery List Organizer

Paste a shopping list and get it sorted by supermarket aisle with duplicates merged and quantities added up.

Quantities and units are understood — 2 lb chicken, 3 x apples, 1/2 kg flour, bananas x2. Force an aisle with a hash, e.g. pizza #frozen.

Items
0
Aisles
0
Duplicates merged
0
Ticked off
0 / 0

Your organised list will appear here as you type.

No uploads. Your files stay on your device.

Free forever, no sign-up, no cookies. Buy me a coffee

How it works

Paste a messy shopping list and this tool rewrites it as a tidy, aisle-by-aisle checklist. Each line is parsed for a quantity and a unit — 2 lb chicken breast, 3 x apples, 1/2 kg flour or bananas x2 all work — and the item name is matched against a built-in dictionary of about 450 common grocery terms to decide which aisle it belongs to: Produce, Meat & Seafood, Dairy & Eggs, Bakery, Pantry, Frozen, Drinks, Snacks & Sweets, Household, Personal Care, or Other when nothing matches. Matching uses the longest keyword found in the item name, so ice cream lands in Frozen rather than Dairy and peanut butter lands in Pantry rather than Dairy.

Duplicates are merged when the item name and unit agree, and their quantities are added up — write 3 apples at the top and apples at the bottom and you get 4 apples once. Items with different units stay on separate lines, because 2 lb of chicken and 2 packs of chicken are not the same thing. The dictionary is curated rather than exhaustive, so anything unusual drops into Other; you can always override the aisle yourself by adding #frozen, #produce or any label of your own to the end of a line. Tick items off as you shop, then copy the checklist or download it as a text file. Everything runs in your browser — nothing you type is uploaded or stored.

Frequently asked questions

How do I sort a grocery list by aisle?

Paste your list one item per line and the organizer does it for you. Each line is matched against a built-in dictionary of about 450 common grocery terms and dropped into one of eleven aisles — Produce, Meat & Seafood, Dairy & Eggs, Bakery, Pantry, Frozen, Drinks, Snacks & Sweets, Household, Personal Care, or Other. Matching uses the longest keyword found in the item name, so "ice cream" goes to Frozen rather than Dairy and "peanut butter" goes to Pantry rather than Dairy. If something lands in the wrong place, add a hash tag to the end of the line — "pizza #frozen" or "olives #produce" — and that aisle wins.

Does it understand quantities and units?

Yes. A leading number is read as a quantity and an optional unit right after it is recognised, so "2 lb chicken breast", "3 x apples", "1/2 kg flour", "2 cans of chopped tomatoes" and the trailing form "bananas x2" all parse correctly. Units cover weights (kg, g, lb, oz), volumes (l, ml, cups, tbsp, tsp, pints) and packaging (pack, can, jar, bottle, box, bag, loaf, bunch, punnet, clove, slice). Duplicates are merged when the item name and unit match, and their quantities are added — write "3 apples" at the top and "apples" at the bottom and you get "4 apples" once. Items with different units stay separate, because 2 lb of chicken is not 2 packs of chicken.

Is my shopping list uploaded anywhere?

No. The whole tool is JavaScript running in your browser: the aisle dictionary is embedded in the page, the parsing and grouping happen on your device, and nothing you type is sent to a server, saved to an account or logged. There is no signup and no app to install. When you are done you can copy the organised checklist to your clipboard or download it as a plain .txt file, which is the only time your list leaves the page — and it goes straight to your own device.

Report a bug