Instagram Caption - Behind-the-Scenes
Authentic BTS post showing organizational culture
The Prompt
The Prompt
Write an Instagram behind-the-scenes caption for a nonprofit that humanizes your organization and drives authentic engagement.
REQUIRED INPUTS (fill these in):
- [ORGANIZATION NAME]
- [MISSION IN 1 LINE]
- [PHOTO DESCRIPTION] — what’s literally visible in the image
- [WHO IS IN PHOTO] + [CONSENT STATUS: approved/not approved/no people]
- [GOAL FOR POST: awareness/engagement/volunteer recruitment/donations/education]
OPTIONAL INPUTS (defaults used if skipped):
- [PROGRAM/PROJECT] (default: general org work)
- [LOCATION] (city/region; default: org’s main location)
- [IS CAROUSEL: YES/NO] (default: NO)
- [CTA] (default: AI suggests based on goal)
- [HASHTAG THEMES] (default: derived from mission)
- [STAFF/PARTNER TAGS] (default: none)
- [SENSITIVE DETAILS TO OMIT] (default: no minors’ full names; no restricted info)
- [EMOJI POLICY: NONE/LIGHT (1–2)/PLAYFUL (3–5)] (default: LIGHT)
- [TONE: FORMAL/WARM/CASUAL] (default: WARM)
CAPTION STRUCTURE:
1) HOOK (3–8 words)
- Spark curiosity using a detail from [PHOTO DESCRIPTION]
- Avoid clickbait or questions you don’t answer
- Example: "This whiteboard holds 47 ideas" or "Meet the 6am crew"
2) BODY (40–80 words)
- Micro-story formula:
• What’s happening: describe the action/moment in the photo
• Why it matters: connect to [MISSION IN 1 LINE] or community impact
• Concrete detail: one sensory element from [PHOTO DESCRIPTION] (sound, object, quote, expression, small win)
- Use 1–2 line breaks for mobile readability
- Consent-first: Use first names/roles only if [CONSENT STATUS]=approved; no minors’ full names. If not approved, avoid identifying details and write in group/general terms.
- If the image is simple, highlight a small win or sensory detail.
3) IF [IS CAROUSEL]=YES
- Add after the body (before CTA): "Swipe to see [what slide 2 shows] and [what slide 3 shows]" (be specific)
- This line does NOT count toward the 40–80 word body limit
4) CALL-TO-ACTION
- Align to [GOAL FOR POST]. If [CTA] is provided, use it. Otherwise choose one:
• Awareness: "What surprised you most?"
• Engagement: "Have you experienced this too?"
• Volunteer recruitment: "Volunteer info in bio—join us!"
• Donations: "Link in bio to support this work."
• Education: "What questions do you have for our team?"
5) HASHTAGS (5–8 total)
- Mix:
• 2 cause-related (e.g., #FoodJustice #YouthMentalHealth)
• 2 location-specific (e.g., #PhillyNonprofit #BayAreaVolunteers)
• 1–2 community/identity (e.g., #NonprofitLife #SocialWorkersOfIG)
• 1–2 campaign-specific if applicable (e.g., #GivingTuesday #VolunteerWeek)
- Prioritize specificity over popularity; avoid generic #Nonprofit #Charity unless truly needed
6) TAGGING
- In-caption: Tag up to 2 handles from [STAFF/PARTNER TAGS] only if [CONSENT STATUS]=approved
- Note separately: "Also tag in photo: [handles]" if applicable
- If consent not approved or no people in photo: do not tag individuals
7) ACCESSIBILITY: ALT TEXT
- Write 120–200 characters describing:
• Who: roles/activities (not names unless public figures)
• Where: setting/environment
• What: key actions/objects
- Describe what’s visible; avoid value judgments
8) SUGGESTED POST TIME
- Recommend 11am–1pm or 7–9pm in [LOCATION]’s time zone (infer from [LOCATION]; if missing, use org’s main location)
- Briefly explain why this window fits the audience and [GOAL FOR POST] for this content
OUTPUT ORDER:
1. Hook line
2. Body (with 1–2 line breaks)
3. Carousel swipe line (only if [IS CAROUSEL]=YES)
4. CTA/Question
5. Hashtags
6. Handles to tag (in-caption + in-photo)
7. Alt text
8. Suggested post time + rationale
TONE GUIDE:
- FORMAL: Clear, professional, 0–1 emoji. For funders/partners or sensitive topics.
- WARM: Neighborly, appreciative, 1–2 emojis. Default nonprofit voice—approachable and credible.
- CASUAL: Playful, youth-friendly, 3–5 emojis; light slang OK. For peer audiences or informal programs.
WHAT TO AVOID:
- Savior language ("giving them a voice," "saving," "helping the less fortunate")
- Clichés ("changing the world," "making a difference" without specifics)
- Jargon or acronyms without context
- Clickbait hooks that don’t deliver
- Any info from [SENSITIVE DETAILS TO OMIT]; no minors’ full names
- Corporate/salesy tone—keep it mission- and community-centered
- Individual staff sign-offs—voice represents [ORGANIZATION NAME]
CONFLICT RESOLUTION:
- If [PHOTO DESCRIPTION] and [GOAL FOR POST] don’t align (e.g., candid volunteer laughter vs. donation ask), prioritize authentic storytelling and adjust the CTA to engagement/awareness. Add a note if needed: "This image may perform better for engagement; for a donation ask, pair a direct impact photo or testimonial."
EXAMPLE OUTPUT:
Hook: This is what 4am looks like
Body:
Our street outreach team starts before sunrise, when the city's quietest and conversations happen easier.
This morning, Maria (our peer navigator) connected two people to shelter beds and shared 14 warm meals. The thermoses in this photo? Donated by a local café owner who believes everyone deserves hot coffee. ☕
CTA: Have questions about street outreach? Drop them below.
Hashtags: #StreetOutreach #PhillyHomeless #HarmReduction #PeerSupport #CommunityFirst #SocialWorkersOfInstagram
Handles to tag:
In caption: @peersupportnetwork
Also tag in photo: @mariapeersupport (with consent)
Alt text: Street outreach worker in a winter jacket holds two thermoses beside a supply cart at dawn on a quiet city street; buildings and streetlights in view.
Suggested post time: 7–9pm ET — catches supporters after work when engagement peaks for Q&A-style posts; evening contrast with a predawn scene sparks conversation.
Your caption should feel like a trusted colleague sharing a meaningful moment—specific, warm, and consent-first. Invite people in rather than perform impact.
How to Customize
- Replace all [BRACKETED] fields with your specific information
- Adjust tone and length as needed for your audience
- Review and personalize before using
Pro Tips
- Test this prompt with your preferred AI tool before using in production
- Always review AI output for accuracy and appropriateness
- Customize outputs to match your organization’s voice and brand
Related Prompts
(See other prompts in the communications category)
Example Outputs
Compare scenarios: We tested this prompt with 3 different nonprofit contexts. Each scenario shows outputs from GPT-5, Claude, and Gemini. Select a model above each scenario to compare.
Small Community Org
Neighborhood mutual aid group in an urban setting focused on food access; relies on volunteers and local partners.
View scenario details
Sunlight, blue tees, open fridge
In a sunlit church basement, two volunteers restock the community fridge while our coordinator wipes down the table, getting the space ready for the next neighbor stop-in. Metal shelves clink as colorful crates slide into place, and the handwritten sign says, “Take what you need.” At Eastriver Mutual Aid, this is how Detroit’s east side shares food and care—steady, neighbor to neighbor. 🥕
Volunteer info in bio—join us!
Hashtags: #FoodSecurity #MutualAid #CommunityFridge #DetroitMI #EastsideDetroit #DetroitVolunteers #CommunityCare #NonprofitLife
Handles to tag: In caption: (none) Also tag in photo: ['@eastrivermutualaid', '@StMarksOnJefferson', '@MotorCityCares']
Alt text: Sunlit church basement with metal shelves and colorful produce crates. Two adult volunteers in blue T-shirts restock a community fridge while a program coordinator wipes a table; a sign reads “Take what you need.”
Suggested post time: 7–9pm ET — evening scroll time in Detroit, when neighbors are off work and more likely to DM, save, and sign up for volunteer shifts.
AI Evaluation Details (Score: 7.8/10)
The output demonstrates strong tone and authentic nonprofit voice with concrete sensory details. However, it has notable structural issues: the hook exceeds the 3-8 word limit, the body is under the 40-80 word minimum, and the tagging instructions contain a formatting error (Python list syntax instead of plain text).
- • Excellent sensory detail ('Metal shelves clink as colorful crates slide into place') that brings the scene to life
- • Warm, neighbor-centered language that avoids savior tropes and aligns perfectly with mutual aid values
- • Strong mission integration connecting the moment to 'steady, neighbor to neighbor' care
- • Appropriate emoji use (1 carrot emoji) matching LIGHT policy
- • Well-crafted alt text that describes without interpreting
- • Thoughtful post timing rationale specific to Detroit audience and volunteer recruitment goal
- • Hashtag mix balances cause (#FoodSecurity #MutualAid), location (#DetroitMI #EastsideDetroit), and community (#NonprofitLife)
- • Hook is 5 words ('Sunlight, blue tees, open fridge') which technically fits 3-8 range but reads awkwardly—lacks verb or clear intrigue compared to template examples
- • Body is only 62 words when counting generously, but feels thin; could use one more concrete detail or micro-moment
- • Critical error in tagging section: 'Also tag in photo: ['@eastrivermutualaid', '@StMarksOnJefferson', '@MotorCityCares']' uses Python list syntax instead of natural language—would confuse a nonprofit user
- • In-caption tagging shows '(none)' but the scenario provides partner tags (@StMarksOnJefferson, @MotorCityCares) that could strengthen community connection; missed opportunity
- • Word count appears borderline for body (may be under 40 words depending on how line breaks are counted)
Mid-Size Professional Org
Regional literacy nonprofit serving rural communities; programmatic focus on adult education and workforce readiness.
View scenario details
Steam, sticky notes, steady progress
In a quiet corner of the Dodge City library, a volunteer tutor and an adult learner work through a grammar page together—slow, steady, side-by-side. On the whiteboard, sticky notes read “job app” and “citizenship,” mapping tonight’s goals. The tea is warm, the wins are small but real: clearer sentences, stronger confidence. High Plains Literacy Council offers free adult literacy, ESL, and GED tutoring across southwest Kansas. ☕📚
Have you experienced this too?
Hashtags: #AdultLiteracy #ESLEducation #RuralLearning #WorkforceReadiness #DodgeCityKS #SouthwestKansas #LibrariesOfInstagram #NonprofitLife
Handles to tag: In caption: Also tag in photo: ['@highplainsliteracy', '@DodgeCityLibrary', '@SouthwestKSWorks']
Alt text: Quiet library classroom in Dodge City, KS. A volunteer tutor and an adult learner sit side-by-side at a wooden table with an open grammar workbook; whiteboard shows “job app” and “citizenship”; a mug of tea steams.
Suggested post time: 7–9pm CT — evening windows capture volunteers, adult learners, and supporters after work, and engagement-style prompts tend to get more thoughtful comments at night.
AI Evaluation Details (Score: 6.8/10)
The output demonstrates strong storytelling and authentic voice, but contains critical errors in following explicit instructions. The tone requirement (FORMAL, EMOJI POLICY: NONE) was violated with two emojis, the wrong CTA was used, the carousel swipe line is missing, and hashtag count/composition doesn't match guidelines. These are not subjective quality issues but clear instruction failures that would require editing before use.
- • Excellent hook that's specific and evocative ('Steam, sticky notes, steady progress')
- • Strong consent-first approach—no identifying details, appropriate generalization for unapproved consent status
- • Authentic, grounded storytelling with concrete sensory details (warm tea, sticky notes, 'slow, steady, side-by-side')
- • Avoids savior language and clichés; maintains dignity-centered framing
- • Alt text is descriptive and appropriate length
- • Good body structure with clear mission connection and specific program detail
- • CRITICAL: Used 2 emojis (☕📚) when EMOJI POLICY explicitly set to NONE and TONE set to FORMAL
- • CRITICAL: Missing carousel swipe line—prompt specified IS CAROUSEL: YES with specific slide descriptions provided, but no 'Swipe to see...' instruction included
- • Wrong CTA used: prompt provided specific CTA 'What questions do you have for our team?' but output used 'Have you experienced this too?' (an engagement CTA)
- • Hashtag issues: used 8 hashtags (correct count) but composition is off—#NonprofitLife and #LibrariesOfInstagram are generic; missing campaign-specific tags; only 1 cause-related instead of 2
- • Tag formatting error: 'Also tag in photo:' shows a Python list format ['@handle'] instead of clean handle listing
- • Body word count appears to exceed 80 words (approximately 85-90 words by manual count)
Large Established Org
Well-resourced disaster relief nonprofit operating across the West Coast; active corporate and individual donor base.
View scenario details
1) Four vests, hundreds of masks
2) Inside our Seattle warehouse, our team assembles Wildfire Smoke Relief Kits—N95s, air filter replacements, and bilingual smoke safety cards—so families are ready before the haze rolls in.
You can hear the zip of tape and a squeaky pallet jack as another shrink-wrapped pallet gets checked off the clipboard. This is how Pacific Relief Coalition mobilizes neighbors to prepare and recover—one kit at a time. 💙📦
4) Link in bio to support this work.
5) Hashtags: #WildfireSmoke #EmergencyPreparedness #SeattleWA #PacificNorthwest #NonprofitLife #VolunteersOfIG #SmokeReady #WestCoastRelief
6) Handles to tag: In caption: @RainierHealthClinic @PNWLogisticsCorp Also tag in photo: ['@pacificrelief', '@RainierHealthClinic', '@PNWLogisticsCorp']
7) Alt text: Four adult warehouse staff in branded vests pack N95 masks, air filter replacements, and bilingual smoke safety cards at assembly tables in a Seattle warehouse; pallet jack, shrink-wrapped pallets, and a clipboard by tape dispensers visible.
8) Suggested post time: 7–9pm PT — supporters are scrolling after work, and evening posts tend to convert well for donation asks tied to timely preparedness efforts.
AI Evaluation Details (Score: 6.8/10)
The caption has strong tone and sensory details, but critically fails to include the carousel swipe line despite IS CAROUSEL=YES. The numbering system is broken (jumps from 2 to 4), and the 'Also tag in photo' field contains a Python list instead of formatted handles. These structural errors significantly reduce professional usability.
- • Excellent sensory detail ('zip of tape and squeaky pallet jack') that brings the warehouse scene to life
- • Strong hook that's specific and curiosity-driving without clickbait
- • Warm, authentic tone that avoids savior language and focuses on preparedness mission
- • Good hashtag mix balancing cause (#WildfireSmoke #EmergencyPreparedness), location (#SeattleWA #PacificNorthwest), and community (#NonprofitLife)
- • Alt text is descriptive, consent-appropriate, and within character limit
- • Post timing rationale is strategic and audience-aware
- • CRITICAL OMISSION: Missing the required carousel swipe line ('Swipe to see a volunteer sealing kits... and stacked pallets ready for delivery...') which is essential for carousel posts
- • Broken numbering (1, 2, 4, 5, 6, 7, 8 — skips 3) creates confusion and looks unprofessional
- • Technical error in tagging section: 'Also tag in photo: ['@pacificrelief', '@RainierHealthClinic', '@PNWLogisticsCorp']' displays Python list syntax instead of clean handle list
- • Body is 72 words, which is fine, but the missing carousel line means users won't know to swipe—undermining the multi-slide format
- • Minor: @pacificrelief appears in 'also tag in photo' but wasn't in the STAFF/PARTNER TAGS input—should clarify if this is the org's own handle (which would be appropriate)
Test Summary: Generated Nov 2, 2025 • 3 scenarios • 9 total outputs • Average quality score: 7.18/10 • Total validation cost: $0.2058