menu-MENAmenu-MENA
HomePricingBlogContact UsGet Started
The menu-MENA admin dialog for editing a modifier group, showing bilingual name fields, min/max select inputs, and an options table with price and sold-out columns

Size, Add-Ons and Extras: Setting Up Modifiers Without Confusing Customers

Menu Design

By menu-MENA Team

Published on August 29, 2026


Why a Price field on the item isn't enough

A burger that comes in a regular and a family size isn't two menu items, it's one item with a choice attached. Same with a pizza that needs toppings, a coffee that needs a milk type, or a grill dish that needs a spice level. Handle this by typing "Burger (Large)" and "Burger (Regular)" as two separate catalog entries and you end up maintaining two names, two descriptions, and two photos for what's really one dish with a decision point. menu-MENA handles it with modifier groups instead: an option set built once, then attached to whichever items need it.

Building your first group

The Modifiers screen (under Modifiers in the dashboard) lists your groups in a table with columns for name, min/max select, and a preview of the options. Click New group and you get a dialog with a bilingual name field, an optional helper text field, and two number inputs: Min select and Max select.

Those two numbers do the real work. Min select of 1 with Max select of 1 makes the group required and single-pick, exactly what "Size" needs: the customer must choose one, and only one. Min 0 with Max 1 makes it optional and single-pick, good for something like Spice Level where "no preference" is a valid answer. Min 0 with Max 3 makes it optional and multi-pick, right for toppings where a customer might add nothing, one thing, or several.

Below that sits the options table: a label field (bilingual), a price delta field, and a Sold Out switch, one row per option. Leave the price field blank for a free option (the admin's own placeholder text says as much). A typical Size group looks like Small with no price change, Medium at +5 EGP, Large at +10 EGP.

Groups you probably already have

If you picked an establishment type during setup, some of this may already be done. menu-MENA's shared catalog ships with a set of starter groups pre-attached by category: pizza categories get Size and Extra Toppings, ice cream categories get Number of Scoops and Flavor (pick up to three), burger categories get Bread, Cooking Style and Extra Protein, coffee categories get Milk and Sugar. In the groups table, these show a "From catalog" badge; anything you build yourself is badged "Custom." You're rarely starting from a blank screen. More often you're deciding which of the pre-attached groups actually fit your version of the dish, and adding the ones that don't exist yet.

Attaching one group without editing every item

A group only affects an item once you attach it. Open an item, and its Modifiers section shows Add binding with a menu listing every group you've built. Anything already attached shows as disabled with an "attached" note so you can't double-add it.

Attaching is where per-item reality gets handled without duplicating the group. Inside each attached group's card:

  • Override picks for this item: a switch that, when off, means the item just inherits the group's own min/max. Turn it on only if this specific item needs a different range, say a group that's normally optional but required on one dish.
  • Hide options: a row of chips, one per group option, that you click to hide from this item without touching the group. Attach "Extra Protein" to both a burger and a salad, then hide "Extra Beef" on the salad. The burger keeps it, the group definition is untouched.
  • Override prices: a field per visible option that changes the price on this item alone. Raise the price of Extra Cheese on one signature pizza without moving it on every other pizza using the same Toppings group.
  • Item-only extras: new label-and-price rows that exist only on this item, never written back to the shared group. The admin's own hint describes exactly this use case: something like "XL" or "Supreme" that only one dish sells.

None of these four touch the group itself or any other item using it. That's the difference between one Size group serving forty items cleanly and forty near-identical groups drifting out of sync.

What the guest actually sees

Tap an item with modifiers attached and a sheet slides up from the bottom. Required groups read "Select "; optional ones read "Add " instead, so an optional group doesn't read as a demand. A multi-pick group shows a "select up to N" hint under its name. Options list their price as "+15 EGP" or "Free," never a bare number the customer has to interpret.

A required single-pick group auto-selects its first available option the moment the sheet opens, so the customer never faces an unset required field, only a default they're free to change. On a multi-pick group, tapping past the max doesn't throw an error: it swaps out the oldest pick for the new one, so "pick up to 3" behaves the way a person expects rather than locking up. If someone taps Add to order with a required group unanswered, nothing submits silently wrong: that group's row shakes and scrolls into view instead.

Sold-out options show struck through and disabled rather than disappearing outright, so the customer can see it exists and isn't just missing. If every option in a required group is sold out, Add to order itself disables and reads "Sold Out" rather than letting an order through the kitchen can't make. The same sold-out mechanic that pulls a whole dish off the menu works at the option level here: a switch, a save, and it's live.

From tap to kitchen

Selections lock in at the moment a customer taps Add. Later edits to the group don't rewrite carts already sitting in someone's phone. That snapshot carries all the way to the order. Look at a WhatsApp order that lands on the restaurant's phone and a line reads "2× Burger (Large, Extra Cheese) — 145 EGP," modifier labels included, comma-separated, right where whoever's cooking can read them without decoding anything.

Building the group is the two-minute part. The part worth spending real time on is deciding, item by item, which of your groups actually apply. A foul sandwich has a bread choice. A bowl of koshari never will.

Frequently Asked Questions

Reuse one. A modifier group lives on its own in the Modifiers screen: build Size once with Small, Medium and Large, then attach that same group to your pizza, your grilled chicken, and anything else that comes in sizes. Editing the group updates every item it's attached to.

Open that item's modifier bindings and use the price override field next to that option. It only changes the price on that item; the shared group, and every other item using it, keeps the original price.

No. A required group (minimum select of 1 or more) either auto-picks the first available option if it's a single choice, or blocks the Add to order button and shakes that group into view until the customer answers it.

No, it's a switch, not a deletion. Flip Sold Out back off in the group's edit dialog and save, and the option reappears for customers immediately. Nothing about the option itself is lost while it's off.

Often not. menu-MENA ships with starter groups already attached to matching catalog items: pizza categories get Size and Toppings, burger categories get Bread, Cooking Style and Extra Protein, coffee categories get Milk and Sugar, and so on. You're customizing a starting point, not building from an empty screen.

The picks travel with the order. A WhatsApp order line reads something like "2× Burger (Large, Extra Cheese) — 145 EGP", the exact modifier labels the customer chose, not just a total.