Salon Service Menu
A hair salon, barber or nail bar's seasonal price list, built as the salon's own signage rather than an advert: high-contrast Bodoni serif, wide air, and one warm nude ground alternating with one espresso ground across five scenes — the room and the name, six services split over two typographically identical menu pages, a "good to know" note, and a booking card. 34 seconds, 9:16 vertical (1080×1920, 30fps). Thirty fields are swapped per render — salon_name, location_line, season_label, handle_line, two photographs (salon_photo, detail_photo), two group labels, six services × three fields each (service_N_name / _detail / _price, with prices passed preformatted including the currency symbol), plus offer_line, offer_detail, booking_line and hours_line. Because the payload is really "ten fields plus a six-row table", a salon re-renders the whole card each time prices change by editing eighteen strings and reusing both photographs; a multi-site group renders it once per location per season.
- Aspect ratio
- 9:16 · Vertical
- Duration
- ~34s
- Category
- Social Media
Try it with your own copy
Edit a field and the frame re-renders in your browser. No account, no credits - previews are free because they cost a browser paint, not a render.
What you can customize
This template exposes 30 dynamic fields you can swap per video - edit them in the editor or pass them to the API to batch-render variations at scale. The monospace name is the exact key to send in replacements.
Salon Photo
urlsalon_photohttps://images.unsplash.com/photo-1626383137804-ff908d2753a2?fm=jpg&q=80&w=1600&fit=crop
Season Label
textseason_labelSpring 2026
~28 characters max · 1 line
Salon Name
textsalon_nameMarlowe & Fern
~20 characters max · 1 line
Location Line
textlocation_line38 Bellwood Street · Leith
~62 characters max · 1 line
Handle Line
texthandle_line@marloweandfern
~35 characters max · 1 line
Group 1 Label
textgroup_1_labelCut & Colour
~24 characters max · 1 line
Service 1 Name
textservice_1_nameCut & Finish
~27 characters max · 1 line
Service 1 Detail
textservice_1_detail60 min · with a senior stylist
~51 characters max · 1 line
Service 1 Price
textservice_1_price£58
~9 characters max · 1 line
Service 2 Name
textservice_2_nameHalf Head Highlights
~27 characters max · 1 line
Service 2 Detail
textservice_2_detail2 hr 15 · toner and finish included
~51 characters max · 1 line
Service 2 Price
textservice_2_price£128
~9 characters max · 1 line
Service 3 Name
textservice_3_nameBalayage
~27 characters max · 1 line
Service 3 Detail
textservice_3_detail3 hr · with a colour specialist
~51 characters max · 1 line
Service 3 Price
textservice_3_price£190
~9 characters max · 1 line
Group 2 Label
textgroup_2_labelTreatment & Finish
~24 characters max · 1 line
Service 4 Name
textservice_4_nameGloss & Tone
~27 characters max · 1 line
Service 4 Detail
textservice_4_detail45 min · shine refresh between colours
~51 characters max · 1 line
Service 4 Price
textservice_4_price£45
~9 characters max · 1 line
Service 5 Name
textservice_5_nameBond Treatment
~27 characters max · 1 line
Service 5 Detail
textservice_5_detail30 min · add to any colour service
~51 characters max · 1 line
Service 5 Price
textservice_5_price£28
~9 characters max · 1 line
Service 6 Name
textservice_6_nameBlow Dry & Style
~27 characters max · 1 line
Service 6 Detail
textservice_6_detail40 min · finishing products included
~51 characters max · 1 line
Service 6 Price
textservice_6_price£34
~9 characters max · 1 line
Detail Photo
urldetail_photohttps://images.unsplash.com/photo-1700760934268-8aa0ef52ce0a?fm=jpg&q=80&w=1600&fit=crop
Offer Line
textoffer_lineFirst visit — 15% off any colour service
~75 characters max · 3 lines
Offer Detail
textoffer_detailNew clients only. Every colour service includes a strand test and a full consultation before we start.
~195 characters max · 3 lines
Booking Line
textbooking_linemarloweandfern.com/book
~41 characters max · 1 line
Hours Line
texthours_lineTue–Sat 9–7 · Thu until 9
~41 characters max · 1 line
Render it from the API
Copy either call below. Both already carry this template's ID and its real variable keys - swap the values for your own.
1. Preview it — free
Same body as a render. Costs no credits, creates no job. Returns a public URL that plays the video in a browser, plus a list of problems with your payload — a mistyped key is otherwise ignored in silence.
curl -X POST https://renderly.video/api/v1/previews \
-H "Authorization: Bearer $RENDERLY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"templateId": "salon-service-menu",
"replacements": {
"salon_photo": "https://images.unsplash.com/photo-1626383137804-ff908d2753a2?fm=jpg&q=80&w=1600&fit=crop",
"season_label": "Spring 2026",
"salon_name": "Marlowe & Fern",
"location_line": "38 Bellwood Street · Leith",
"handle_line": "@marloweandfern",
"group_1_label": "Cut & Colour"
}
}'2. Render it
Change one word in the URL. Keep templateId — it is what links your call to this template, so later improvements reach you automatically.
curl -X POST https://renderly.video/api/v1/renders \
-H "Authorization: Bearer $RENDERLY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"templateId": "salon-service-menu",
"replacements": {
"salon_photo": "https://images.unsplash.com/photo-1626383137804-ff908d2753a2?fm=jpg&q=80&w=1600&fit=crop",
"season_label": "Spring 2026",
"salon_name": "Marlowe & Fern",
"location_line": "38 Bellwood Street · Leith",
"handle_line": "@marloweandfern",
"group_1_label": "Cut & Colour"
}
}'The body above shows 6 of 30 variables. Send any subset — every key you leave out renders its authored default. Read the full contract, with character limits, from GET /api/v1/templates/salon-service-menu/variables. See the previewing guide, the rendering guide, or the OpenAPI spec.
Frequently asked questions
How do I customize the Salon Service Menu template?
Open the template in the Renderly editor and replace its 30 customizable fields (such as Salon Photo) with your own text, images, or video. Every change previews instantly before you render.
How much does it cost to render this template?
Rendering is credit-based - 1 credit equals 1 minute of 1080p video, billed by the second. You only pay when you export, and credits never expire on the pay-as-you-go plan.
Can I generate this video at scale via the API?
Yes. POST this template's ID and a replacements object to /api/v1/renders - one call per row of data, 30 fields swappable per video. Send the same body to /api/v1/previews first to check it for free. No-code integrations like Zapier work the same way.
More Social Media templates

Crypto Price Alert
A dark, fast vertical alert card for one crypto asset and one price move, fired when a threshold is crossed: the asset, the percentage move in crypto gold, the timeframe, the price now against where it started, and a call to action. 15 seconds, 9:16 (1080x1920). Dynamic fields: asset_symbol, asset_name, move_pct (sign included), timeframe, price_now, price_from, alert_time, source_name and cta_line. Reads the same for a 3% move or a 40% drop, up or down.

Reddit Story Reader
A screen-native story-reader short for faceless channels: a forum post card with the title and source, then three body pages in grey panels with a page counter and progress bar, and an end card that sets up the next part. 53 seconds, 9:16 (1080x1920). Dynamic fields: post_title, source_label, page_1, page_2, page_3 (up to about 380 characters each), part_label, outro_line and channel_handle. Longer stories render as several parts.

Motivational Quote Reel
The moving sibling of the Daily Quote card: one quote over slow, graded footage with an optional AI-narrated read. 23 seconds, 9:16 at 1080x1920, five scenes - a title card, the quote, the attribution, a near-black quote card built to be screenshotted, and a follow outro - in near-black, warm white and a single warm-amber accent, set in Cormorant Garamond with JetBrains Mono furniture. Dynamic fields: series_label, date_label, the_line, attribution, handle (text), background_clip (video) and narration (sound, filled per render with a text-to-speech value). It uses the same field names as the Daily Social Card - Quote, so one row a day renders both the square card and the vertical reel.