Seasonal Pushes
How to handle holiday and seasonal product launches on the reservations site.
MoC runs major seasonal campaigns 3-4 times per year — Easter, Thanksgiving, Christmas/Holiday, and occasionally special events. These are the largest content pushes on the reservations site, involving dozens of product additions and changes.
Timeline (Typical)
| Phase | When | What |
|---|---|---|
| Spreadsheet arrives | 3-4 weeks before launch | MoC sends Smartsheet with all new/changed items |
| Content loading | 2-3 weeks before | Upload products, images, set attributes |
| QA | 1-2 weeks before | MoC reviews staged items via admin login |
| Go-live | Launch date | Products moved from Private to Published |
| Mid-season updates | During season | Price changes, OOS items, corrections |
| Teardown | Day after season ends | Items returned to OOS or Private |
Season Manager Configuration
The custom season manager plugin controls product availability windows. Seasons are configured with:
- Order start/end dates — when customers can place orders
- Pickup start/end dates — available pickup window
- Associated products — which items belong to each season
Recent season configs (for reference):
| Season | Orders Open | Orders Close | Pickup Window |
|---|---|---|---|
| Easter '26 | Mar 3, 10AM | Apr 16, 10PM | Apr 16 12PM – Apr 20 12PM |
| Thanksgiving '25 | Oct 27, 10AM | Nov 23, 10PM | Nov 23 12PM – Nov 27 12PM |
| Holiday (Christmas) | Dec 1, 10AM | Dec 21, 10PM | Dec 12 12PM – Dec 31 10PM |
| Extended Holiday | Dec 21, 10PM | Dec 28, 8AM | (overlap with Holiday end) |
Loading Products
Review the spreadsheet
Before starting, read through the full spreadsheet and flag issues:
- Duplicate PLU numbers
- Missing images or file-path-only images
- Incomplete data (missing allergens, descriptions, pricing)
- Items that already exist (submitted as "new" but just need updates)
Stage products as Private
New seasonal products should be created as Private until go-live. This lets MoC QA via admin login without exposing items to customers.
Seasonal item attributes (Easter, Thanksgiving, etc.) don't display in the attribute filter until products are published. MoC must QA via admin login.
Upload images
Process and upload all product images. Optimize before uploading — client images are often uncompressed TIFFs.
Set product data
For each product, set:
- Title, description, short description (follow the description format)
- Price (including weight-based calculations)
- Attributes: department, allergens, seasonal tags, store availability
- Sort order per spreadsheet
- Product availability metadata
QA review
Notify MoC that items are staged. They review via admin login and provide feedback. Expect 1-3 rounds of corrections.
Common QA findings: wrong images, pricing errors, missing allergens, incorrect descriptions, sort order issues.
Go-live
On launch date:
- Change seasonal products from Private to Published
- Verify the seasonal category/attribute page shows all items
- Verify pickup dates are correct in the checkout
Teardown
After the season ends:
- Set seasonal products to Out of Stock (not Private — OOS is better for SEO)
- Remove seasonal attributes from navigation if needed
- Remove any seasonal hero banners or promotional content
- Verify the checkout no longer offers seasonal pickup dates
MoC staff sometimes change items back to Private instead of Out of Stock. Watch for this — it removes items from search engine indexes. The correct model is Published + Out of Stock.
Spreadsheet Gotchas
- MoC sometimes re-highlights all items including completed ones — push back, ask for only actual changes
- Some entries include file paths for images instead of URLs — flag these
- Duplicate PLU entries cause confusion — clarify which line takes priority
- "Related products" PLU numbers in spreadsheets haven't been actively managed — auto-generated related products are in use instead
- Items already live when a season starts don't get the seasonal tag (e.g., a year-round item doesn't get "Christmas" just because it's December)
Key Constraint
Changes to currently-live products can't be staged separately — they're applied directly. Coordinate timing with MoC if live products need updates alongside a seasonal launch.