The idea in one line
An add-on category is a question ("What size?"), its options are the answers ("Small / Medium / Large"), and each answer can carry a price change. Attach the question to an item, and every order of that item asks it, at the register and online, identically.
Build your choice sets
On the business side, open Items & Catalog → Manage Add-ons.
Add Category, name it like the question it is. The app's own examples are the right vibe: Create categories like Size, Temperature, or Extras.
Add Option for each answer, with its price bump, zero for included choices ("Ice level"), real amounts for real costs ("Add espresso shot +$1").
Attach the category to the items it belongs to. One "Size" category serves every drink you sell, build the question once, reuse it everywhere.
Where it shows up
At the register, tapping an item with options pops the choices before it lands in the order, your staff can't forget to ask. Online, the item sheet requires the required choices before add-to-cart, customers can't order it half-specified. Same data, both doors.
Pricing choices that don't bite
- The base price is the smallest honest version. "Latte $4.50" with "+$0.75 large" reads fair; "Latte $5.25, small −$0.75" reads like a trick even when the math is identical.
- Charge for what costs you. Oat milk, extra shots, gift wrap: real cost, real upcharge. Preference-only choices (ice level, spice level) at zero keep the menu friendly.
- Cap the questions. One item asking five questions online is a form, not a menu. Two or three well-chosen categories per item covers nearly everything.
If something's off
- You already made "Small X / Large X" as separate items. Consolidate: one item + a Size category, then delete the clones. Your reports get cleaner too, sales of X stop being split across three lines.
- An option's price changed. Edit the option once; every item using that category updates everywhere at once. That's the whole reason categories are shared.
- A choice should be required but customers skip it. Make it required on the item, online won't add-to-cart without it, and the register asks every time.