44 min readContent generation

Implementation Guide: Generate seasonal menu descriptions, specials copy, and social media content

Step-by-step implementation guide for deploying AI to generate seasonal menu descriptions, specials copy, and social media content for Restaurants & Food Service clients.

Hardware Procurement

iPad Air (M2, 11-inch, 128GB, Wi-Fi)

AppleMUQK3LL/A (Starlight) or equivalent color SKUQty: 1

$599 per unit (MSP cost) / $799 suggested resale (includes case, setup, and configuration)

Primary in-venue content management station. Used by restaurant manager or marketing staff to review AI-generated content, approve social media posts, browse the Canva design interface, manage the Buffer scheduling queue, and capture quick food photos when the primary camera phone is unavailable.

iPad Air Smart Folio Case

AppleMM6G3ZM/A or current equivalentQty: 1

$79 per unit (MSP cost) / included in iPad resale bundle

Protective case for the iPad in a kitchen-adjacent restaurant environment. Provides stand functionality for hands-free content review.

Torjim 16x16" Softbox Photography Lighting Kit (85W LED, 2-pack)

TorjimTJ-SP01 (Amazon ASIN: B082FHPQKB or current equivalent)Qty: 1

$45–$70 per kit (MSP cost) / $150 suggested resale (includes setup and positioning guidance)

Provides consistent, diffused lighting for food photography. Two softbox lights eliminate harsh shadows on plated dishes, ensuring AI-assisted social media posts have professional-quality images. Placed on either side of the designated photo station.

Adjustable Overhead Phone Tripod Mount

UBeesize or LamicallUBeesize 67" Phone Tripod (Amazon ASIN: B08B3X7N6J) or Lamicall Gooseneck Phone HolderQty: 1

$30–$50 per unit (MSP cost) / $100 suggested resale (includes setup)

Stable overhead and angled phone mount for consistent flat-lay and 45-degree food photography. Eliminates shaky handheld shots and ensures repeatable photo composition for social media content.

Apple iPhone 16 Pro (optional upsell)

AppleMYW53LL/A (128GB) or higher storageQty: 1

$999 per unit (MSP cost) / $1,149 suggested resale

Optional hardware upsell for clients lacking a quality camera phone. The iPhone 16 Pro's 48MP camera system with macro photography capability is the premier choice for food photography in a smartphone form factor. Most clients will already own a suitable smartphone, making this an optional line item.

Software Procurement

ChatGPT Business

OpenAIGPT-5.4Qty: 1–2 seats

$25/seat/month (annual billing) or $30/seat/month (monthly billing). MSP cost: $25–$60/month. Suggested client resale: $45–$55/seat/month.

Primary AI content generation engine. Used to generate seasonal menu descriptions, daily specials copy, social media captions, email campaign text, and review response drafts. ChatGPT Business provides GPT-5.4 access, longer context windows for menu-wide generation, and admin controls for the MSP to manage the client's account.

~$0.15/1M input tokens + $0.60/1M output tokens. Estimated restaurant usage: 200K–500K tokens/month = $0.10–$2.50/month. Effectively negligible cost.

Used for automated content generation workflows built with Zapier or Make. Enables scheduled batch generation of social posts and menu descriptions without manual ChatGPT interaction. Only needed if implementing the advanced automation workflow.

Canva Pro

CanvaSaaS subscription (individual)Qty: per user

$15/month or $120/year per user. MSP cost: $10/month (annual billing). Suggested client resale: $20–$25/month.

Visual content design platform for creating social media graphics, printable menu layouts, email header images, and promotional materials. Includes AI features (Magic Write, Magic Media, Background Remover) and 1TB cloud storage for the restaurant's food photo library. Brand Kit feature enforces consistent colors, fonts, and logos across all content.

Buffer Essentials

BufferPer-channel SaaS subscriptionQty: 3 channels (Instagram, Facebook, TikTok or X)

~$6/channel/month (~$18/month). Suggested client resale: $12–$15/channel/month ($36–$45 total).

Social media scheduling and publishing platform. AI-generated social posts and Canva-designed graphics are loaded into Buffer for scheduled posting. Provides analytics on post performance to inform prompt optimization. Supports Instagram, Facebook, TikTok, X, LinkedIn, and Pinterest.

Mailchimp Standard

Intuit MailchimpSaaS subscription (contact-based)

$20/month for 500 contacts. Scales with contact list size. Free tier available for up to 250 contacts. Suggested client resale: $35–$45/month.

Email marketing platform for distributing AI-generated specials announcements, seasonal menu launches, event promotions, and loyalty campaigns. Includes pre-built email templates, audience segmentation, and GDPR/CAN-SPAM compliance features built in. Canva designs embed directly into Mailchimp campaigns.

Zapier Starter (optional — advanced automation)

ZapierStarterQty: 1 subscription

$19.99/month for 750 tasks/month. Suggested client resale: $35–$45/month.

No-code automation platform connecting the AI content pipeline. Automates workflows such as: POS menu update triggers AI description generation, which feeds into Canva template and Buffer schedule. Only required for the advanced automated workflow; not needed for the basic manual implementation.

Google Workspace Business Starter

GooglePer-user SaaS subscriptionQty: Per user

$7.20/user/month (annual). Most restaurants already have this or equivalent.

Provides business email (for account setup), Google Drive (for content archives and prompt library storage), Google Sheets (for content calendars), and Google Docs (for collaborative content review). If the client already has business email and cloud storage, this line item can be skipped.

Prerequisites

  • Reliable broadband internet connection with minimum 25 Mbps download speed at the restaurant location
  • A modern web browser (Chrome 120+, Safari 17+, or Edge 120+) on at least one device
  • Business email address (Gmail, Microsoft 365, or equivalent) for account registration across all platforms
  • Access to the restaurant's existing social media accounts (Instagram, Facebook, TikTok, and/or X) with admin credentials
  • Access to the restaurant's existing website CMS (WordPress, Squarespace, Wix, Popmenu, or equivalent) with admin credentials
  • Current menu with complete ingredient lists and allergen information, verified by the head chef or kitchen manager
  • Restaurant brand assets: logo files (PNG/SVG), brand colors (hex codes), preferred fonts, and any existing brand style guide
  • A credit card or payment method authorized for recurring SaaS subscriptions
  • Designated point of contact at the restaurant (owner, GM, or marketing manager) who will serve as the content approver
  • At least one smartphone (iPhone 12+ or Samsung Galaxy S21+) with a functioning camera for food photography
  • Decision on content approval workflow: who reviews AI-generated content before publishing (owner, chef, GM, or MSP)
  • Current POS system information (Toast, Square, Clover, etc.) for potential menu data integration
  • List of upcoming seasonal events, holidays, and planned menu changes for the next 6 months

Installation Steps

...

Step 1: Conduct Client Discovery & Brand Audit

Meet with the restaurant owner/GM to document their brand voice, target audience, menu structure, competitive positioning, and content goals. Collect all brand assets (logo, colors, fonts, sample menus, existing social posts they like). Review their current POS system and website CMS. Photograph the restaurant interior and current plated dishes for reference. This information is critical for building effective AI prompts that match the restaurant's unique voice and style.

Note

Use a standardized intake questionnaire. Key questions: 'Describe your restaurant in 3 words,' 'Who is your ideal customer?', 'What tone do you want — casual, upscale, playful, sophisticated?', 'What are your most popular dishes?', 'What social platforms matter most to you?' Document everything in a shared Google Doc that becomes part of the project file.

Step 2: Create and Configure OpenAI ChatGPT Business Account

Navigate to chat.openai.com and create a ChatGPT Business workspace for the client. Add the client's designated content person and the MSP admin as users. Configure workspace settings including data privacy (disable model training on client data if desired), usage limits, and admin controls. Verify the subscription is active and both seats can access GPT-5.4.

1
Navigate to: https://openai.com/chatgpt/business
2
Click 'Get Started' and create the workspace with client's business email
3
Set workspace name to '[Restaurant Name] Content'
4
Add MSP admin email as workspace admin
5
Add client's designated content person as member
6
Under Settings > Data Controls, review 'Improve model for everyone' toggle
7
Under Settings > Workspace, set usage notifications
Note

If the client prefers a lower-cost option, ChatGPT Plus ($20/mo single user) or ChatGPT Go ($8/mo) are alternatives, but they lack admin controls and multi-seat management. For MSP account management, ChatGPT Business is strongly recommended. Ensure the client understands OpenAI's data usage policies — by default, Business plans do not use conversations for model training.

Step 3: Create and Configure Canva Pro Account with Brand Kit

Create a Canva Pro account for the restaurant. Set up the Brand Kit with the restaurant's logo, color palette (hex codes), and preferred fonts. Upload all existing brand assets. Create folders for: Menu Templates, Social Media Templates, Email Headers, Food Photo Library. Pre-load Canva with 3–5 menu layout templates and 3–5 social media post templates sized for Instagram (1080x1080), Facebook (1200x630), Instagram Stories (1080x1920), and TikTok thumbnails (1080x1920).

1
Navigate to: https://www.canva.com/pro/
2
Sign up with client business email
3
Go to Brand Kit (left sidebar > Brand)
4
Upload logo files (PNG and SVG versions)
5
Add brand colors: primary, secondary, accent (enter hex codes)
6
Add brand fonts: heading font, body font, accent font
7
Create folder structure: Home > [Restaurant Name] > Menus | Social | Email | Photos
8
Search Canva templates for 'restaurant menu' — customize 3-5 with brand kit
9
Search templates for 'food social media' — customize 3-5 per platform size
Note

Canva's Magic Write AI feature can complement ChatGPT for quick in-design text generation. However, ChatGPT produces higher-quality long-form menu descriptions. Use Canva's AI primarily for quick headline variations and design-integrated copy. The Brand Kit is the single most important setup item — it ensures every piece of content looks professionally consistent.

Step 4: Create and Configure Buffer Account for Social Scheduling

Create a Buffer Essentials account and connect the restaurant's social media profiles. Configure posting schedules based on optimal times for restaurant content (typically 11am–1pm for lunch promos, 4pm–6pm for dinner features, and 7pm–9pm for evening engagement). Set up the content calendar view and create initial queue slots for the first month.

1
Navigate to: https://buffer.com/
2
Sign up with client business email
3
Connect social channels: Instagram Business (requires Facebook Page connection), Facebook Page, TikTok Business (if applicable), X/Twitter (if applicable)
4
For each channel, go to Settings > Posting Schedule
5
Set posting times: Instagram: Mon/Wed/Fri 11:30am, Tue/Thu/Sat 5:30pm, Sun 12:00pm — Facebook: Mon/Wed/Fri 12:00pm, Tue/Thu 5:00pm, Sat 10:00am — TikTok: Tue/Thu/Sat 7:00pm
6
Enable 'Start Page' if client wants a link-in-bio landing page
Note

Posting times should be customized based on the restaurant's actual customer demographics and time zone. The schedule above is a starting template for a full-service restaurant in the US Eastern time zone. Buffer's analytics will reveal optimal times after 2–4 weeks of data. Instagram Business account (not personal) is required for scheduling — help the client convert if needed.

Step 5: Create and Configure Mailchimp Account

Set up Mailchimp for the restaurant's email marketing. Import existing customer email list (if any), create audience segments, and set up branded email templates for: Weekly Specials, Seasonal Menu Launch, Event Announcement, and Monthly Newsletter. Configure GDPR-compliant signup forms for the restaurant's website.

1
Navigate to: https://mailchimp.com/
2
Sign up with client business email
3
Create primary audience: '[Restaurant Name] Guests'
4
Import existing email list (CSV) if available — ensure all contacts opted in
5
Go to Content > Email Templates
6
Create template: 'Weekly Specials' — header image + 2-3 specials with descriptions
7
Create template: 'Seasonal Menu Launch' — full menu showcase layout
8
Create template: 'Event Promo' — single event focus with CTA
9
Go to Audience > Signup Forms > Embedded forms
10
Generate signup form code and provide to client for website embedding
11
Enable GDPR fields: Marketing permission checkboxes for email and SMS
Note

If the client has fewer than 250 contacts, the Free plan is sufficient to start. Upgrade to Essentials ($13/mo) or Standard ($20/mo) as the list grows. Ensure all imported contacts have legitimate opt-in consent — do NOT import purchased lists or scrape emails. This is both a legal requirement (CAN-SPAM, GDPR) and an email deliverability best practice.

Step 6: Set Up Food Photography Station

Install the photography lighting kit and tripod/mount at a designated location in the restaurant (ideally near a window for supplementary natural light, but not dependent on it). Configure the two softbox lights at 45-degree angles on either side of the shooting area. Mount the phone tripod for overhead shots. Take 10–15 test photos of existing dishes to calibrate lighting position, phone camera settings, and composition. Create a simple photo guide for staff.

1
Identify photo station location (near kitchen pass or front-of-house table near window)
2
Assemble both softbox lights per manufacturer instructions
3
Position Light A at 45° left of subject, approximately 2 feet away
4
Position Light B at 45° right of subject, approximately 2 feet away
5
Both lights should be angled downward at ~30° toward the plate
6
Set up overhead tripod/mount directly above the center shooting area
7
On the iPhone/smartphone camera: Enable HDR, Set to Photo mode (not Portrait for flat-lay food), Tap to focus on the main dish element, Use 1x or 2x zoom (avoid digital zoom)
8
Take 10–15 test shots of various dishes
9
Review in Canva — adjust lighting if shadows are too harsh
Note

The goal is a repeatable, consistent setup that any staff member can use — not professional food photography. Consistency matters more than perfection. Label light positions with tape on the floor so they can be repositioned after cleaning. Create a laminated 1-page photo guide with the camera settings and example compositions to keep at the photo station.

Step 7: Build the Master Prompt Library in ChatGPT

Create a comprehensive library of reusable prompt templates within the ChatGPT Business workspace. These prompts are the core IP of the engagement and should be saved as Custom GPTs or in a shared Google Doc. Build prompts for: seasonal menu descriptions, daily specials copy, social media posts (by platform), email campaign copy, review response drafts, and event promotions. Each prompt includes the restaurant's brand voice, target audience, and formatting requirements.

1
Click your profile icon > My GPTs > Create a GPT
2
Name it: '[Restaurant Name] Content Writer'
3
In the Instructions field, paste the System Prompt (see custom_ai_components)
4
Under Conversation Starters, add: 'Generate this week's specials descriptions', 'Create 5 Instagram posts for this week', 'Write seasonal menu descriptions for [season]', 'Draft an email announcing our new menu'
5
Upload the restaurant's current menu PDF as a Knowledge file
6
Upload the brand voice guide document as a Knowledge file
7
Save and share the GPT with the workspace
Note

The Custom GPT is the most important deliverable of this project. It encapsulates the restaurant's brand voice, menu knowledge, and content formatting requirements into a reusable tool that any staff member can use without prompt engineering expertise. The MSP should maintain and update this GPT as the menu evolves. Save all prompts in a separate Google Doc as backup — Custom GPTs can be accidentally modified by users.

Step 8: Configure Automated Workflow with Zapier (Advanced — Optional)

For clients wanting automated content generation, set up a Zapier workflow that triggers weekly content batches. The workflow: (1) Triggers on a schedule (e.g., every Monday at 8am), (2) Calls the OpenAI API with the weekly specials prompt, (3) Sends generated social posts to a Google Sheet for review, (4) After approval (checkbox in sheet), pushes approved posts to Buffer queue. This reduces the manual effort from 30+ minutes per post to a simple approve/reject review.

1
Create new Zap: 'Weekly Social Content Generator'
2
Trigger: Schedule by Zapier > Every Week > Monday 8:00 AM
3
Action 1: OpenAI (ChatGPT) > Conversation — Model: gpt-5.4-mini, User Message: (paste the social media batch prompt from prompt library), System Message: (paste the system prompt)
4
Action 2: Google Sheets > Create Spreadsheet Row — Spreadsheet: '[Restaurant Name] Content Calendar', Map AI output fields to columns: Post Text, Platform, Suggested Image, Status='Pending'
5
Action 3 (separate Zap): Google Sheets > Updated Row (when Status='Approved') — Buffer > Add to Queue, Map: Post text, select profile, schedule time
6
Test the full workflow with sample data
7
Turn on Zap
Note

This step is OPTIONAL and should only be implemented for clients on the Standard or Premium managed service tier. The basic implementation (manual ChatGPT + copy/paste to Buffer) works perfectly well and is simpler to support. Zapier adds cost ($19.99/mo) and complexity but significantly reduces the client's weekly time investment. Make.com ($9/mo) is a lower-cost alternative to Zapier with similar capabilities.

Step 9: Content Compliance Review Setup

Establish the content review workflow to ensure all AI-generated content is accurate, allergen-safe, and FTC-compliant before publishing. Create a review checklist document, assign the reviewer role (head chef for ingredient accuracy, owner/GM for brand voice), and configure the approval process in the content calendar spreadsheet.

1
Create Google Sheet: '[Restaurant Name] Content Review Checklist'
2
Add the following columns: A: Content Piece (title/description), B: Content Type (menu/social/email), C: Generated Date, D: AI Tool Used (ChatGPT/Canva Magic Write), E: Ingredient Claims Accurate? (Yes/No), F: Allergens Correctly Listed? (Yes/No), G: Pricing Accurate? (Yes/No), H: Brand Voice Match? (Yes/No), I: Reviewer Name, J: Review Date, K: Status (Draft/Reviewed/Approved/Published), L: Published Where (Menu/Instagram/Facebook/Email), M: Notes
Note

FTC truth-in-advertising requirements mean EVERY AI-generated claim about ingredients, sourcing, preparation methods, and dietary attributes must be verified by a human before publishing. AI models confidently generate plausible but potentially inaccurate food descriptions — 'house-made' when it's actually purchased, 'organic' when it's conventional, 'gluten-free' when cross-contamination is possible. The head chef or kitchen manager MUST review ingredient and allergen claims. This is non-negotiable.

Step 10: Website Integration — Menu Descriptions and Content Publishing

Update the restaurant's website with AI-generated menu descriptions. Configure the CMS to accept the new content format. If using WordPress, install and configure relevant plugins. If using Squarespace/Wix/Popmenu, update the menu pages directly. Ensure all web content meets ADA/WCAG 2.1 Level AA accessibility standards.

For WordPress Sites

1
Log into WordPress admin (wp-admin)
2
Navigate to the menu page(s)
3
Replace existing menu descriptions with AI-generated versions
4
For each food image, add descriptive alt text: alt='Grilled Atlantic salmon with lemon herb butter, roasted asparagus, and wild rice pilaf'
5
Verify font size is minimum 16px for body text
6
Verify color contrast ratio meets 4.5:1 minimum (use WebAIM Contrast Checker)
7
Test with screen reader (NVDA on Windows, VoiceOver on Mac)

For Squarespace/Wix

1
Navigate to the menu page in the editor
2
Update each menu item description
3
Add alt text to all food images via the image settings panel
4
Preview on mobile to verify responsive layout

For Popmenu (if applicable)

1
Log into Popmenu dashboard
2
Navigate to Menu Manager
3
Update dish descriptions — Popmenu may have its own AI features to complement
Note

Accessibility is a legal requirement under ADA for restaurants (public accommodations). Common violations: missing alt text on food images, low contrast text on decorative backgrounds, menu PDFs that aren't screen-reader accessible. Always provide an HTML version of the menu in addition to any PDF downloads. Run the WAVE accessibility tool (wave.webaim.org) on the updated pages before handoff.

Step 11: Initial Content Generation Batch — Prove the System

Using the configured Custom GPT and prompt library, generate the first full batch of content: complete menu descriptions for all current dishes, one week of social media posts (3–5 per platform), one email campaign for the current seasonal offering, and 5 templated review response drafts. Run all content through the compliance review process. This serves as both a system test and the first deliverable the client sees.

1
In ChatGPT Business, open the Custom GPT '[Restaurant Name] Content Writer'
2
Generate the following in separate conversations:
  • Conversation 1: Full Menu Descriptions
  • Conversation 2: Weekly Social Posts
  • Conversation 3: Email Campaign
  • Conversation 4: Review Responses
Conversation 1: Full Menu Descriptions
text
Prompt: 'Generate descriptions for our complete [season] menu. Here are the dishes: [paste menu items with ingredients]. Format: Dish name, 2-3 sentence evocative description, dietary tags, allergen callouts.'
Conversation 2: Weekly Social Posts
text
Prompt: 'Create 5 Instagram posts and 5 Facebook posts for this week. Theme: [current seasonal focus]. Include: caption text, 3-5 hashtags, suggested image description for each post.'
Conversation 3: Email Campaign
text
Prompt: 'Write an email announcing our new [season] menu. Include: subject line (under 50 chars), preview text (under 100 chars), header section, 3 featured dishes with descriptions, and a CTA to make a reservation.'
Conversation 4: Review Responses
text
Prompt: 'Create 5 template responses for Google/Yelp reviews: 1 for a 5-star review, 1 for a 4-star review, 1 for a 3-star review about slow service, 1 for a 2-star review about food quality, 1 for a 1-star review. Be empathetic, professional, and on-brand.'
Note

This is the 'wow moment' for the client. Schedule a screen-share or in-person session to generate content together so they can see the system in action. Expect to iterate 2–3 times on each prompt to dial in the voice and style. Save the best outputs as examples in the prompt library for future consistency. Remind the client: AI output is a FIRST DRAFT — chef and management review is always required before publishing.

Step 12: Staff Training Session

Conduct a 2–3 hour training session (on-site or virtual) with the restaurant's designated content person(s) and the owner/GM. Cover: how to use the Custom GPT for different content types, how to use Canva templates for visual content, how to schedule posts in Buffer, how to send email campaigns in Mailchimp, the content review and approval process, and basic food photography best practices using the installed lighting setup.

Note

Prepare a training agenda document and a 'Quick Reference Card' (laminated single page) with: (1) How to open the Custom GPT and use conversation starters, (2) How to open and customize Canva templates, (3) How to add posts to Buffer, (4) How to send a Mailchimp campaign, (5) The content review checklist. Record the training session (with permission) and share the recording via Google Drive. Most restaurant staff are not tech-savvy — keep explanations simple, visual, and hands-on.

Custom AI Components

Restaurant Content Writer — Custom GPT System Prompt

Type: prompt The master system prompt that powers the Custom GPT in ChatGPT Business. This prompt establishes the restaurant's brand voice, content formatting rules, compliance guardrails, and output structure. It is the core intellectual property of the engagement and should be maintained and updated by the MSP as the restaurant's menu and brand evolve.

Implementation

1
Navigate to the Custom GPT Instructions field in ChatGPT Business.
2
Paste the following system prompt, replacing all [BRACKETED] placeholders with client-specific information.
System Prompt for Custom GPT: [Restaurant Name] Content Writer
text
You are the official content writer for [RESTAURANT NAME], a [CUISINE TYPE] restaurant located in [CITY, STATE]. Your job is to create compelling, on-brand marketing content including menu descriptions, social media posts, email campaigns, and review responses.

## BRAND VOICE
- Tone: [SPECIFY: e.g., 'Warm, approachable, and slightly playful — like a knowledgeable friend recommending their favorite dish']
- Vocabulary level: [SPECIFY: e.g., 'Accessible but not dumbed down. Use food terminology when it adds flavor (pun intended) but always in context that a non-foodie can understand.']
- Personality: [SPECIFY: e.g., 'Passionate about local ingredients, proud of our scratch kitchen, welcoming to all guests']
- NEVER use: [SPECIFY: e.g., 'Corporate jargon, clickbait phrases like "you won't believe," excessive exclamation marks, or overly formal language']
- ALWAYS use: [SPECIFY: e.g., 'Sensory language (taste, texture, aroma), seasonal references, and a warm conversational tone']

## RESTAURANT DETAILS
- Cuisine: [CUISINE TYPE]
- Price range: [$ / $$ / $$$ / $$$$]
- Signature dishes: [LIST 3-5 SIGNATURE DISHES]
- Key differentiators: [e.g., 'farm-to-table sourcing, wood-fired cooking, 20-year family recipes, house-made pasta']
- Target audience: [e.g., 'Local families, date-night couples aged 28-55, foodies who appreciate craft cocktails']
- Location context: [e.g., 'Downtown historic district, patio dining available, near the waterfront']

## CONTENT FORMATTING RULES

### Menu Descriptions
- Length: 2-3 sentences per dish (40-75 words)
- Structure: Lead with the hero ingredient or cooking method, describe flavors and textures, end with what makes it special
- MUST include: Key ingredients that affect allergens (dairy, nuts, gluten, shellfish, etc.)
- MUST NOT include: False claims about sourcing, preparation, or dietary attributes
- Format: Dish Name — Description. (Price: $XX)
- Example: Pan-Seared Diver Scallops — Golden-crusted and butter-basted, served atop a velvety cauliflower purée with crispy pancetta and a bright lemon-caper vinaigrette. A study in contrasts — rich yet refreshing. (Contains: dairy, pork)

### Social Media Posts (Instagram)
- Length: 125-200 words for caption
- Include: 1 hook sentence, 2-3 descriptive sentences, 1 call-to-action, 3-5 relevant hashtags
- Hashtag mix: 2 broad (#foodie, #[cityname]eats) + 2 specific (#[restaurantname], #[signaturehashtag]) + 1 seasonal
- CTA options: 'Link in bio for reservations,' 'Tag someone who needs this,' 'What's your go-to order?'
- Emoji usage: [SPECIFY: e.g., '1-3 emojis per post, food-related only, never as bullet points']

### Social Media Posts (Facebook)
- Length: 80-150 words
- More conversational and community-focused than Instagram
- Include a question or conversation starter when possible
- CTA: Direct link to reservation page, menu, or event

### Email Campaigns
- Subject line: Under 50 characters, curiosity-driven or benefit-driven
- Preview text: Under 100 characters, complements subject line
- Body structure: Hero image description → intro paragraph (2-3 sentences) → featured items (3-4 with short descriptions) → CTA button text
- CTA: 'Reserve Your Table,' 'View the Full Menu,' 'Order Online'

### Review Responses
- Always thank the reviewer by name if provided
- For positive reviews: Express genuine gratitude, reference something specific they mentioned, invite them back
- For negative reviews: Apologize sincerely, do NOT make excuses, offer to make it right, provide contact info for follow-up
- NEVER be defensive, sarcastic, or dismissive
- Keep responses under 100 words

## COMPLIANCE GUARDRAILS
- NEVER claim a dish is 'organic,' 'locally sourced,' 'gluten-free,' 'vegan,' 'house-made,' or any specific dietary/sourcing attribute unless I explicitly confirm it in the prompt
- ALWAYS flag when a description MIGHT imply a dietary claim that needs verification
- ALWAYS include allergen callouts for the Big 9: milk, eggs, fish, shellfish, tree nuts, peanuts, wheat, soybeans, sesame
- If unsure about an ingredient or preparation method, ASK rather than assume
- Include a note at the end of menu descriptions: '[NOTE: All descriptions require chef verification for ingredient accuracy and allergen completeness before publishing]'

## SEASONAL AWARENESS
- Current season: [SPECIFY or instruct 'Use the current calendar season']
- Seasonal ingredients to feature: [LIST or instruct 'Ask me what's in season']
- Upcoming events/holidays: [LIST or instruct 'Ask me about upcoming events']

Type: prompt A reusable prompt template for generating complete seasonal menu descriptions. The MSP or restaurant staff pastes in the current menu items and ingredients, and the Custom GPT generates formatted descriptions ready for the website, print menu, and online ordering platforms.

Implementation

Seasonal Menu Description Generator
text
# paste into Custom GPT, replacing all [BRACKETED] sections with actual menu
# data

## Prompt Template: Seasonal Menu Description Generator

### Usage: Paste this into the Custom GPT conversation, replacing the [BRACKETED] sections with the actual menu data.

---

Generate complete menu descriptions for our [SEASON] [YEAR] menu. For each dish below, write a 2-3 sentence description (40-75 words) that makes the reader crave the dish. Use sensory language — flavors, textures, aromas, visual appeal.

For each dish, I'm providing: the dish name, key ingredients, cooking method, and any dietary/sourcing claims that ARE verified.

## APPETIZERS
1. [Dish Name] — Ingredients: [list]. Method: [grilled/roasted/raw/etc]. Verified claims: [organic/local/house-made/none]
2. [Dish Name] — Ingredients: [list]. Method: [method]. Verified claims: [claims or none]
[...continue for all appetizers]

## ENTREES
1. [Dish Name] — Ingredients: [list]. Method: [method]. Verified claims: [claims or none]. Price: $[XX]
[...continue for all entrees]

## DESSERTS
1. [Dish Name] — Ingredients: [list]. Method: [method]. Verified claims: [claims or none]. Price: $[XX]
[...continue for all desserts]

## OUTPUT FORMAT
For each dish, output:
**[DISH NAME]** — $[PRICE]
[2-3 sentence description]
*Contains: [allergens from Big 9 list]*
*[Dietary tags if verified: V=Vegetarian, VG=Vegan, GF=Gluten-Free, DF=Dairy-Free]*

⚠️ At the end, list any dishes where you were unsure about allergens or dietary claims so the chef can verify.

---

Weekly Social Media Batch Generator

Type: prompt A prompt template that generates a full week of social media content across multiple platforms in a single conversation. Optimized for batch generation to minimize the client's weekly time investment. Outputs platform-specific captions, hashtags, and image suggestions.

Implementation

1
Run this prompt every Monday (or use as the Zapier-automated prompt). Fill in the weekly context before sending.
Prompt Template: Weekly Social Media Content Batch
text
Generate a full week of social media content for [RESTAURANT NAME] for the week of [DATE RANGE].

## THIS WEEK'S CONTEXT
- Weekly specials: [List 2-4 specials with brief ingredient notes]
- Events this week: [e.g., 'Live jazz Friday night,' 'Wine pairing dinner Saturday,' or 'None']
- Seasonal focus: [e.g., 'Spring asparagus and ramp season,' 'Summer patio dining']
- Any promotions: [e.g., 'Happy hour extended to 7pm this week,' or 'None']
- Recent highlights: [e.g., 'We just got a great review from [publication],' 'New dessert launched,' or 'None']

## GENERATE THE FOLLOWING

### INSTAGRAM (5 posts for the week)
For each post, provide:
- **Day & suggested time**: (e.g., Monday 11:30am)
- **Caption**: 125-200 words with hook, body, CTA
- **Hashtags**: 5 hashtags (2 broad + 2 branded + 1 seasonal/trending)
- **Image suggestion**: Describe the ideal photo to pair with this post
- **Post type**: Feed post / Carousel / Reel idea

Post mix for the week:
- 1x featured dish close-up
- 1x behind-the-scenes (kitchen/chef/prep)
- 1x special/promotion announcement
- 1x community/engagement post (question, poll, or user-generated content prompt)
- 1x seasonal/lifestyle post (the dining experience, ambiance, patio, etc.)

### FACEBOOK (3 posts for the week)
For each post, provide:
- **Day & suggested time**
- **Caption**: 80-150 words, conversational tone
- **CTA**: With direct link placeholder [RESERVATION LINK] or [MENU LINK]
- **Image suggestion**

Post mix:
- 1x weekly specials roundup
- 1x event or community post
- 1x featured dish or seasonal highlight

### INSTAGRAM STORIES (3 story ideas)
- Quick, casual, ephemeral content ideas
- Include: poll stickers, question stickers, or countdown stickers where appropriate
- Example formats: 'This or that' food polls, kitchen prep time-lapses, staff favorites

## OUTPUT FORMAT
Organize by day of the week. For each day, list all content for that day across platforms.

Email Campaign Generator

Type: prompt Generates complete email campaign copy for seasonal menu launches, weekly specials announcements, event promotions, and holiday campaigns. Output is formatted to drop directly into Mailchimp templates.

Implementation

Prompt Template: Email Campaign Generator
text
### Usage: Use when creating email campaigns in Mailchimp. Generate the copy in ChatGPT, then paste into the Mailchimp template.

---

Create an email campaign for [RESTAURANT NAME] with the following details:

**Campaign type**: [Choose one: Seasonal Menu Launch / Weekly Specials / Event Promotion / Holiday Special / Monthly Newsletter]
**Key message**: [e.g., 'Our new summer menu is here featuring local farm produce and refreshing cocktails']
**Featured items**: [List 3-5 dishes/drinks with brief descriptions and prices]
**Call to action**: [e.g., 'Make a reservation,' 'Order online,' 'View the full menu']
**Event details** (if applicable): [Date, time, price, what's included]
**Audience segment**: [e.g., 'All subscribers,' 'Loyal guests (3+ visits),' 'New subscribers']

## GENERATE THE FOLLOWING

1. **Subject Line**: Under 50 characters. Provide 3 options:
   - Option A: Curiosity-driven (e.g., 'You haven't tasted summer yet')
   - Option B: Benefit-driven (e.g., 'New menu: farm-fresh & ready for you')
   - Option C: Urgency-driven (e.g., 'This weekend only: chef's tasting menu')

2. **Preview Text**: Under 100 characters. One option per subject line.

3. **Email Body**:
   - **Hero section**: 1-2 sentences that set the scene (pair with a food hero image)
   - **Intro paragraph**: 2-3 sentences building excitement
   - **Featured Items** (3-4): For each item:
     - Dish name in bold
     - 1-2 sentence mouth-watering description
     - Price
   - **CTA Button Text**: 2-4 words (e.g., 'Reserve Your Table')
   - **Closing line**: Warm sign-off
   - **P.S. line**: Secondary CTA or fun fact

4. **Allergen disclaimer footer**: 'Please inform your server of any allergies or dietary restrictions. Full allergen information available upon request.'

---

POS-to-Content Automation Workflow (Zapier)

Type: workflow An automated workflow using Zapier that monitors for menu updates in the POS system (Square or Toast) and triggers AI content generation. When a new menu item is added or a special is created in the POS, the workflow automatically generates a menu description and social media post draft, placing them in a Google Sheet for human review before publishing.

Implementation

Prerequisites

Workflow Architecture

[POS Menu Update] → [Zapier Trigger] → [OpenAI API Call] → [Google Sheet Row] → [Human Review] → [Buffer Queue]

Zap 1: New Menu Item → Generate Description

Trigger: Square > New Item Created (or Updated)

  • Connection: Authenticate with Square API credentials
  • Filter: Only trigger for items in the 'Menu' category

Action 1: OpenAI > Send Prompt

  • Model: gpt-5.4-mini
  • System Message: [Paste the Restaurant Content Writer system prompt]
  • Max Tokens: 1000
  • Temperature: 0.7
OpenAI User Message prompt template (Zap 1)
text
A new dish has been added to our menu. Generate the following:
1. A menu description (2-3 sentences, 40-75 words)
2. An Instagram caption (150 words with hashtags)
3. A Facebook post (100 words with CTA)

Dish Name: {{trigger.item_name}}
Price: {{trigger.item_price}}
Category: {{trigger.category_name}}
Description from POS: {{trigger.item_description}}

IMPORTANT: Flag any allergen or dietary claims that need chef verification. Do not assume any sourcing or dietary attributes.

Action 2: Google Sheets > Create Row

  • Spreadsheet: [Restaurant Name] Content Calendar
  • Sheet: 'AI Generated — Pending Review'
  • Column A: Date Generated ({{zap_meta_human_now}})
  • Column B: Dish Name ({{trigger.item_name}})
  • Column C: Menu Description (parse from OpenAI output)
  • Column D: Instagram Caption (parse from OpenAI output)
  • Column E: Facebook Post (parse from OpenAI output)
  • Column F: Chef Review Status: 'PENDING'
  • Column G: Brand Review Status: 'PENDING'
  • Column H: Published Status: 'NOT PUBLISHED'

Action 3: Gmail > Send Email

  • To: [chef email], [owner/GM email]
  • Subject: '🍽️ New AI Content Ready for Review: {{trigger.item_name}}'
  • Body: 'A new menu item has been added and AI content has been generated. Please review for accuracy in the Content Calendar spreadsheet: [LINK]. Check ingredient accuracy, allergen completeness, and brand voice.'

Zap 2: Approved Content → Buffer (separate Zap)

Trigger: Google Sheets > New or Updated Row

  • Spreadsheet: [Restaurant Name] Content Calendar
  • Sheet: 'AI Generated — Pending Review'
  • Filter: Chef Review Status = 'APPROVED' AND Brand Review Status = 'APPROVED'

Action 1: Buffer > Add to Queue (Instagram)

  • Profile: Instagram Business
  • Text: {{Instagram Caption column}}
  • Schedule: Next available slot

Action 2: Buffer > Add to Queue (Facebook)

  • Profile: Facebook Page
  • Text: {{Facebook Post column}}
  • Schedule: Next available slot

Action 3: Google Sheets > Update Row

  • Published Status: 'QUEUED IN BUFFER'
Note

This workflow requires parsing the OpenAI output. Use Zapier's 'Formatter' step to split the AI response into menu description, Instagram, and Facebook sections.

Note

For Toast POS: Toast's API requires partner registration. Use a webhook-based approach instead: Toast webhook → Zapier Webhooks trigger.

Note

Temperature of 0.7 provides a good balance of creativity and consistency for food content. Estimated API cost: ~$0.001 per menu item generation (negligible).

Seasonal Content Calendar Generator

Type: prompt A strategic planning prompt that generates a complete content calendar for an upcoming season or month. Outputs a day-by-day plan with content themes, post types, and tie-ins to holidays, local events, and seasonal ingredients. Used by the MSP during monthly planning sessions with the client.

Implementation

Prompt Template: Monthly/Seasonal Content Calendar

Note

Usage: Run at the beginning of each month or season during the MSP's planning session with the client.

Seasonal Content Calendar Prompt Template
text
Create a complete content calendar for [RESTAURANT NAME] for [MONTH/SEASON YEAR].

## CONTEXT
- Restaurant type: [CUISINE TYPE] in [CITY, STATE]
- Seasonal ingredients available: [List key seasonal ingredients, e.g., 'asparagus, ramps, morels, spring peas, strawberries']
- Upcoming holidays/events in this period: [e.g., 'Mother's Day May 12, Memorial Day May 27, Cinco de Mayo May 5, local food festival May 18']
- Restaurant-specific events: [e.g., 'Wine dinner May 10, new cocktail menu launch May 15, chef's birthday May 22']
- Business goals this period: [e.g., 'Increase weekday dinner covers by 15%, grow email list by 200 subscribers, promote patio reopening']
- Content channels: Instagram (5x/week), Facebook (3x/week), Email (2x/month), Instagram Stories (daily)

## OUTPUT FORMAT

For each week of the month, provide:

### Week [#]: [Theme Name] (e.g., 'Week 1: Spring Has Sprung')

**Weekly theme**: [1-sentence description]
**Featured ingredient/dish**: [What to spotlight this week]

| Day | Platform | Content Type | Topic/Hook | Notes |
|-----|----------|-------------|------------|-------|
| Mon | Instagram | Feed - Dish photo | [Specific topic] | [Specific notes] |
| Tue | Facebook | Community post | [Specific topic] | [Specific notes] |
| ... | ... | ... | ... | ... |

**Email campaign this week**: [Yes/No + topic if yes]
**Story ideas**: [3 quick story concepts for the week]

Also provide:
- 3 'evergreen' post ideas that can be used any week if content gaps arise
- 2 'reactive' post templates for unexpected events (e.g., surprise ingredient delivery, staff achievement, weather-related promotion)
- Key hashtag sets for the season

Review Response Assistant

Type: prompt A specialized prompt for generating thoughtful, on-brand responses to customer reviews on Google, Yelp, and TripAdvisor. Handles positive, neutral, and negative reviews with appropriate tone and structure. Includes de-escalation strategies for negative reviews.

Implementation

Prompt Template: Review Response Generator
text
Respond to the following customer review for [RESTAURANT NAME]. Match our brand voice: [warm/professional/casual — per brand guide].

**Platform**: [Google / Yelp / TripAdvisor]
**Star Rating**: [1-5]
**Reviewer Name**: [Name or 'Anonymous']
**Review Text**:
"[Paste the full review text here]"

**Known context** (if any): [e.g., 'We were short-staffed that night,' 'This was during our soft opening,' 'The reviewer is a regular,' or 'No additional context']

For 4–5 Star Reviews

  • Thank them warmly and personally
  • Reference something specific from their review to show you actually read it
  • Invite them back with a specific suggestion ('Next time, try our...')
  • Keep under 75 words

For 3 Star Reviews

  • Thank them for their honest feedback
  • Acknowledge what they enjoyed
  • Address the concern directly without being defensive
  • Express commitment to improvement
  • Invite them to give you another chance
  • Keep under 100 words

For 1–2 Star Reviews

  • Express genuine regret for their experience
  • DO NOT make excuses or blame the customer
  • Take ownership of what went wrong (if clear from the review)
  • Offer to make it right: 'We'd love the chance to make this up to you. Please reach out to [GM name] at [email] so we can discuss this further.'
  • Keep under 100 words
  • NEVER engage in argument or point-by-point rebuttals

Universal Rules

  • Never use the phrase 'we apologize for any inconvenience'
  • Never say 'per our policy' or cite rules
  • Always sign with a name and title (e.g., '— Sarah, General Manager')
  • If the review mentions a food safety issue, flag it immediately: '⚠️ FOOD SAFETY FLAG: This review mentions [issue]. Escalate to management before responding.'
Note

Generate 2 response options so the manager can choose their preferred version.

Testing & Validation

Client Handoff

The client handoff should be conducted as a structured 2-3 hour session (on-site preferred, virtual acceptable) with the restaurant owner/GM and the designated content person. Cover the following:

1. System Overview (15 minutes)

Walk through the complete content pipeline visually: ChatGPT generates text → Canva designs visuals → Buffer schedules social → Mailchimp sends emails. Show how each tool connects and where human review gates exist.

2. Hands-On Tool Training (60 minutes)

  • ChatGPT Custom GPT: Open the Custom GPT, demonstrate each conversation starter, generate a real menu description and social post live, show how to iterate on output ('make it more casual,' 'add more sensory language').
  • Canva: Open a menu template, swap in a new dish description and photo, export as PDF and PNG. Open a social media template, customize for a real post.
  • Buffer: Add a generated post to the queue, demonstrate the calendar view, show how to rearrange or delete scheduled posts.
  • Mailchimp: Walk through sending a campaign using the pre-built template, demonstrate audience selection and scheduling.

3. Food Photography Quick-Start (15 minutes)

Demonstrate the lighting setup, show optimal phone camera settings, take 3 example photos together, compare with and without the lighting rig.

4. Content Review Process (15 minutes)

Walk through the compliance review checklist in Google Sheets.

Critical

EVERY piece of AI-generated content must be reviewed by the chef (for ingredient/allergen accuracy) and the owner/GM (for brand voice) before publishing. Show how to mark items as reviewed and approved.

5. Documentation Handoff

Leave behind the following documents (all saved in the shared Google Drive folder):

  • Quick Reference Card (laminated 1-pager with step-by-step for each tool)
  • Prompt Library document (all prompt templates with usage instructions)
  • Brand Voice Guide (the brand voice section from the Custom GPT, formatted as a standalone reference)
  • Content Calendar template (Google Sheet with the current month pre-populated)
  • Photography Guide (1-page lighting setup diagram and camera settings)
  • Account credentials document (all login URLs, usernames — passwords stored in client's password manager)
  • Escalation contact: MSP support email and phone for content system issues

6. Success Criteria Review (15 minutes)

Review together and confirm the client can complete each of the following independently. If any answer is 'no,' schedule a follow-up micro-training within one week.

7. Ongoing Support Agreement

Review the managed service tier the client has selected (Basic/Standard/Premium) and confirm what the MSP handles vs. what the client handles. Set expectations for response times, monthly check-in schedule, and how to request prompt library updates.

Maintenance

Monthly Maintenance Cadence:

1
Prompt Library Review (Monthly — 1-2 hours): Review and update prompt templates based on menu changes, seasonal transitions, and content performance data. Update the Custom GPT's knowledge files with the latest menu PDF. Refine prompts that aren't producing optimal results based on client feedback. Bill as part of managed service.
2
Content Performance Review (Monthly — 30 minutes): Pull engagement metrics from Buffer analytics (reach, engagement rate, clicks) and Mailchimp (open rate, click rate). Identify top-performing content types and adjust the content calendar and prompts accordingly. Share a brief report with the client.
3
Software Updates & Account Maintenance (Monthly — 15 minutes): Verify all SaaS subscriptions are active and billing correctly. Check for new features in ChatGPT, Canva, Buffer, and Mailchimp that could benefit the client. Update browser extensions and connected integrations if needed.
4
Compliance Spot-Check (Monthly — 30 minutes): Review a random sample of 5-10 published content pieces for FTC compliance (truthful claims), allergen accuracy, and ADA accessibility on the website. Flag any issues and work with the client to correct them.
5
Seasonal Overhaul (Quarterly — 3-4 hours): Major prompt library update for the new season. Generate the full seasonal content calendar. Update Canva templates with seasonal design elements. Create new email campaign templates for seasonal promotions. This is the highest-value recurring touchpoint.
6
AI Model Updates (As needed): When OpenAI or Anthropic release new models (e.g., GPT-5, Claude 4), evaluate whether upgrading improves content quality. Test new models against existing prompts and update if beneficial. Communicate changes to the client.

SLA Considerations:

  • Content system outages (ChatGPT down, Buffer not publishing): MSP responds within 4 business hours, resolves within 24 hours or provides manual workaround.
  • Prompt library update requests: Fulfilled within 3 business days.
  • Emergency content needs (crisis response, urgent menu change): MSP responds within 2 business hours during business days.
  • Monthly check-in call: Scheduled recurring meeting, 30 minutes, same day/time each month.

Escalation Path:

1
Client contacts MSP support email/phone for content system issues.
2
L1 MSP tech troubleshoots (account access, tool configuration, prompt adjustments).
3
L2 MSP tech handles advanced issues (API integration failures, Zapier workflow debugging, Custom GPT rebuilds).
4
Vendor support escalation for platform-level outages (OpenAI status page, Canva support, Buffer support).
Note

Contract Renewal Trigger: Review the engagement at the 6-month mark. Assess: Is the client using the system regularly? Is content quality improving? Are engagement metrics trending up? Use this data to justify renewal and potential upsell to a higher service tier.

Alternatives

Jasper AI — Marketing-Specific Platform

Replace ChatGPT Business with Jasper AI Pro ($59/month) as the primary content generation engine. Jasper is purpose-built for marketing content with 50+ templates, brand voice training, and a campaign workflow builder. It provides a more guided, template-driven experience compared to ChatGPT's open-ended conversational interface.

Popmenu — All-in-One Restaurant Platform

Replace the entire multi-tool stack with Popmenu ($179+/month), a restaurant-specific platform that includes AI-powered menu management, website hosting, online ordering, email/SMS marketing, social media posting, and reputation management in a single platform. This eliminates the need for separate Canva, Buffer, and Mailchimp subscriptions.

Anthropic Claude API — Automated Pipeline Only

Skip the ChatGPT Business subscription entirely and build a fully automated content pipeline using the Anthropic Claude API (Haiku 4.5 at $1/$5 per million tokens) connected via Zapier or Make.com, with a simple Google Sheets interface for input/output. All content is generated programmatically without staff logging into any AI chat interface.

Google Gemini in Google Workspace — Ecosystem Play

If the client is already on Google Workspace, use Google Gemini ($30/user/month for the Enterprise add-on) as the AI engine instead of ChatGPT. Content generation happens natively within Google Docs, Sheets, and Gmail. Combine with Canva for design and Buffer for scheduling.

Fully Managed MSP Content Service — No Client Tools

Instead of setting up tools for the client to use, the MSP operates the entire content pipeline internally. The client provides menu updates, photos, and event details via a shared folder or weekly 15-minute call. The MSP generates all content, designs all graphics, schedules all posts, and sends all emails. The client only reviews and approves via a Google Sheet.

Want early access to the full toolkit?