Skip to main content

Tag Reference

This page is the canonical reference for every metadata tag ezCater reads from Olo Menu Management. Each entry specifies where the tag lives (item, choice, or option group), when it’s required, what values are accepted, and how it behaves

How to read this reference

Every tag entry follows the same structure:

  • Scope — where the tag is applied: item level, choice level, or option-group level

  • Requirement — one of: Required, Required when applicable, Required when set to T, Optional

  • Accepted values — the literal values Olo Menu Management will accept

  • Description — what the tag does on ezCater

  • Example — a working key-value pair

  • Common mistakes — what tends to go wrong

Tag keys and values are not case-sensitive in Olo Menu Management, but this reference uses canonical casing (CateringServeSize, TaxCategory). Values use uppercase with underscores (GLUTEN_FREE, HALF_PAN). Never include spaces inside a value.


Summary table

Tag

Scope

Requirement

Category

CateringServeSize

Item

Required

Pricing

ChoiceTypeTags

Choice

Required when applicable

Operational

FoodLabelingTags (item)

Item

Required when applicable

Dietary

FoodLabelingTags (choice)

Choice

Required when applicable

Dietary

INDIVIDUALLY_PACKAGED_RELISH_SIDE

Choice

Required when set to T

Meal Program

IndividualWrapStatus

Item

Required when set to T

Operational

IsSelectionSizeGroup

Option group

Required when set to T

Sizing

ItemTypeTags

Item

Required when applicable

Operational

LeadTime

Item

Optional

Lead time

MarketplaceChannel

Item

Required when set to T

Channel

QuantityUnit

Item

Required

Unit of measure

RelishChannel

Item

Required when set to T

Channel

TaxCategory

Item

Required

Tax


Channel tags

Channel tags determine which ezCater ordering channels an item appears in. The combination of RelishChannel and MarketplaceChannel defines whether an item is available in Marketplace, Meal Program, both, or neither.

For the full setup workflow, see Meal Program Menu Set Up.

RelishChannel

Scope: Item

Requirement: Required when set to T

Accepted values:

  • T

Description: Marks the item as eligible for Meal Program. When present and set to T, ezCater includes the item in Meal Program menus.

Example: RelishChannel = T

Common mistakes:

  • Adding the tag with a value other than T (the tag is a boolean signal; only T is meaningful).

  • Forgetting that MarketplaceChannel = T cannot stand alone for Meal Program items — RelishChannel = T must also be present.

MarketplaceChannel

Scope: Item.

Requirement: Required when set to T.

Accepted values:

  • T

Description: Marks the item as eligible for Marketplace. When present and set to T, ezCater includes the item in the on-demand Marketplace.

Example: MarketplaceChannel = T

Common mistakes:

  • Using MarketplaceChannel = T alone to publish to Meal Program. It cannot stand alone for Meal ProgramRelishChannel = T must also be present on the item.

  • Omitting the tag entirely on an item that should be on Marketplace; the item won’t appear.

Dietary tags

Customers filter ezCater search results on dietary criteria. An item without the appropriate FoodLabelingTags won’t appear when customers filter for those preferences, even if it genuinely qualifies.

FoodLabelingTags (item level)

Scope: Item

Requirement: Required when applicable

Accepted values: One or more of the following, comma-separated, no spaces:

  • GLUTEN_FREE

  • HALAL

  • HEALTHY

  • KOSHER

  • SPICY

  • VEGAN

  • VEGETARIAN

Description: Flags the item with dietary labels. Customers can filter ezCater results by any of these, so accurate tagging directly affects whether your items get found.

Example: FoodLabelingTags = VEGETARIAN,GLUTEN_FREE

Common mistakes:

  • Inserting a space after the comma (VEGETARIAN, GLUTEN_FREE) — this fails. Remove all spaces inside the value.

  • Tagging an item VEGETARIAN when a choice within it makes the item non-vegetarian. Apply choice-level FoodLabelingTags to specify which selections preserve the item’s dietary profile.

  • Omitting the tag when the item qualifies. 1 in 5 ezCater orders include items with dietary restrictions; an untagged vegan entrée is effectively invisible to vegan customers.

FoodLabelingTags (choice level)

Scope: Choice.

Requirement: Required when applicable.

Accepted values.: Same as item-level FoodLabelingTags:

  • GLUTEN_FREE

  • HALAL

  • HEALTHY

  • KOSHER

  • SPICY

  • VEGAN

  • VEGETARIAN

Description: Flags the specific choice with a dietary label. Choice-level labels are visible to customers but are not filterable on search — they appear inline when the customer is selecting choices for an item.

Example: A choice “Gluten-free roll” inside a bread modifier group: FoodLabelingTags = GLUTEN_FREE

Common mistakes:

  • Treating choice-level labels as filterable. They appear on the choice but don’t drive search filters. To drive filters, the parent item must be tagged.

  • Skipping choice-level tagging on items where a specific choice changes the dietary profile. Without it, a customer who selects a vegan substitution still sees the item flagged with its default profile.

Pricing tag

CateringServeSize

Scope: Item. For sized-based items, applied at the option (choice) level instead — see Sized-Based Items.

Requirement: Required.

Accepted values:

  • Any positive, non-zero integer.

Description: The number of people one unit of the item serves. Drives the “serves X” label customers see on the menu, and informs ezCater’s recommendation engine. Ranges (for example, “serves 4–8”) are not supported; use the lower bound and put the range in the item description.

Example: CateringServeSize = 8

For Meal Program items, the value must always be 1Meal Program orders are individual meals. See Meal Program Menu Set Up.

Common mistakes:

  • Entering a range like 4-8. Only single integers are accepted.

  • Entering a value other than 1 on a Meal Program item. Meal Program meals are individually portioned, so the serve size is always 1.

  • Entering 0. The tag must be a positive non-zero integer; zero will fail.

  • Entering a decimal like 4.5. Use the nearest whole number.

Operational tags

These tags drive ezCater’s upsell logic, search filters, and operational behavior. They don’t change how an item appears on the menu, but they influence how it gets surfaced to customers.

ItemTypeTags

Scope: Item.

Requirement: Required when applicable.

Accepted values: One or more of the following, comma-separated, no spaces:

  • DESSERT

  • DRINKS

  • ICE

  • UTENSILS

Description: Marks the item as belonging to one or more operational categories. ezCater uses these tags for upsell recommendations and to drive specific cart behaviors. 1 in 3 ezCater orders includes beverages and 1 in 5 includes desserts — items that aren’t tagged miss those surfacing opportunities.

Example: ItemTypeTags = DRINKS

Common mistakes:

  • Omitting on beverage and dessert items. Without the tag, the item won’t surface in ezCater’s drink/dessert upsells.

  • Tagging a sandwich as DRINKS or similar miscategorization. The tag should match what the item actually is.

ChoiceTypeTags

Scope: Choice.

Requirement: Required when applicable.

Accepted values: One or more of the following, comma-separated, no spaces:

  • DESSERT

  • DRINKS

  • ICE

  • UTENSILS

Description: Marks the choice as belonging to one or more operational categories. Used for upsell tracking on choices included in packages (for example, a drink choice in a boxed lunch). For Meal Program packages, ChoiceTypeTags also generates an additional label so the choice can be packaged and identified.

Example: A drink choice inside a boxed-lunch modifier group: ChoiceTypeTags = DRINKS

Common mistakes:

  • Tagging only the parent item and skipping the choices. Choice-level tagging is what enables per-package tracking.

IndividualWrapStatus

Scope: Item.

Requirement: Required when set to T.

Accepted values:

  • T

  • F

Description: Identifies whether the item is individually wrapped or packaged. Customers filter for individually packaged options regularly — 27% of ezCater orders include at least one — so accurate tagging measurably affects whether your items get found.

Example: IndividualWrapStatus = T

Common mistakes:

  • Tagging T on items that arrive in shared packaging (a tray of sandwiches rather than individually wrapped sandwiches). Customers filtering for individual packaging will be disappointed.

  • Omitting the tag on items that are individually wrapped. They won’t appear in the relevant search filter.

Sizing tag

IsSelectionSizeGroup

]Scope: Option group.

Requirement: Required when set to T.

Accepted values:

  • T

Description: Marks an option group as a size selector (Small, Medium, Large) rather than a regular modifier group. When applied, ezCater treats the group’s choices as size variants of the parent item rather than as modifiers, and pulls CateringServeSize from the option level instead of the item level.

For the full sized-item setup, including the structural constraints on matching modifier configurations across sizes, see Sized-Based Items.

Example: On the option group containing Small/Medium/Large choices: IsSelectionSizeGroup = T

Common mistakes:

  • Applying the tag to the parent item or to individual choices instead of the option group. It belongs on the option group only.

  • Naming sizes inconsistently across the option group (for example, “Small Tray” on one item and “Small” on another). The choices in a size group should be named consistently and should not include the parent item name.

  • Mismatched option/modifier structure across the sizes. All sizes must share the same option groups with the same descriptions, sort orders, and selection constraints — otherwise the item won’t build.

Tax tag

TaxCategory

Scope: Item.

Requirement: Required. One value only per item.

Accepted values:

  • BAKERY_ITEMS

  • CAKES_AND_PIES

  • CANDY

  • CHIPS_AND_SNACKS

  • COFFEE_TEA_MILK

  • DRESSINGS_AND_CONDIMENTS

  • EXEMPT

  • ICE_CREAM

  • MISCELLANEOUS

  • NON_SODA_DRINKS

  • PREPARED_FOOD

  • SANDWICHES

  • SODA

  • WATER

Description: The item’s tax classification. ezCater uses this to look up the correct tax rate and apply it per order. Tax treatment of catering items varies by jurisdiction, so accurate classification matters.

Example: TaxCategory = PREPARED_FOOD

Common mistakes:

  • Adding more than one TaxCategory to a single item. Only one value is supported.

  • Using MISCELLANEOUS as a catch-all when a more specific category fits. The categories drive tax calculation; using the closest match reduces tax errors.

  • Omitting the tag. Items without TaxCategory won’t sync.

Unit-of-measure tag

QuantityUnit

Scope: Item.

Requirement: Required. One value only per item.

Accepted values:

  • BAR

  • BOTTLE

  • BOWL

  • BOX

  • BUFFET

  • CAKE

  • CAN

  • CARAFE

  • DOZEN

  • FOOT

  • FULL_PAN

  • GALLON

  • HALF_GALLON

  • HALF_PAN

  • ITEM

  • KIT

  • LITER

  • PACKAGE

  • PAN

  • PERSON

  • PIE

  • PIECE

  • PINT

  • PIZZA

  • PLATTER

  • POUND

  • QUART

  • ROLL

  • SIX_PACK

  • SKEWER

  • SLIDER

  • TACO

  • TRAY

  • TWELVE_PACK

  • TWO_LITER

Description: The unit of measure for ordering. If not provided, defaults to ITEM.

Example: QuantityUnit = HALF_PAN

Common mistakes:

  • Adding more than one QuantityUnit to a single item. Only one value is supported.

  • Choosing a unit that doesn’t match how the item is actually packaged. The unit drives quantity prompts in the cart — picking TRAY when the item is sold per PIECE confuses customers.

  • Inventing a custom value. Only the values listed above are accepted.

Lead time tag

LeadTime

Scope: Item.

Requirement: Optional. Use only when the item needs more advance notice than your store-level lead time.

Accepted values: An integer representing minutes, restricted to the accepted whole-hour values between 5 and 72 hours. Not every whole hour is accepted; see Lead Times for the full list and minutes-to-hours conversion table.

Description: Overrides the store-level lead time for a specific item. Use this for items that genuinely need longer prep (a custom cake, a large catering bundle), not as a buffer. Items with longer lead times don’t appear in last-minute searches.

Example: LeadTime = 1440 (24 hours)

Common mistakes:

  • Setting a LeadTime shorter than the store’s lead time. The shorter value is ignored — store lead time still applies.

  • Setting overly long lead times across most of the menu. Many customers filter ezCater by lead time, so an over-tagged menu becomes invisible to last-minute orders.

  • Using a value that isn’t on the accepted list. Only the values listed on Lead Times are supported.

Meal Program tag

INDIVIDUALLY_PACKAGED_RELISH_SIDE

Scope: Choice.

Requirement: Required when set to T.

Accepted values:

  • T

Description: Applied to side choices in Meal Program items when the side is packaged separately from the main item — for example, a bowl with mac and cheese added as a side that arrives in its own container. The tag tells ezCater to generate an additional label for the separately packaged side.

For the broader Meal Program tagging workflow, see Meal Program Menu Set Up.

Example: A “Mac and cheese” side choice on a Meal Program bowl item: INDIVIDUALLY_PACKAGED_RELISH_SIDE = T

Common mistakes:

  • Applying the tag to choices that are mixed into or layered on the main item. Use it only when the side has its own packaging.

  • Applying it on Marketplace items where it has no effect. The tag is Meal Program-specific.

Did this answer your question?