PDP Explainer (Square)

Square product-page video: what it is, benefit scenes from an array, how to use.

Type
Video
Format
Instagram Post · 1:1
Orientation
Square
Duration
21.4s
Scenes
7
Render cost
$0.00535 / render
VariablesData-driven repeatvideo
Open in editor

Free template · opens in the editor, no account required.

Customize PDP Explainer (Square)

PDP Explainer (Square) is a ready-to-render E-commerce video design formatted for Instagram Post · 1:1 with 7 scenes and support for variables, data-driven repeat, video. Open it in the editor to replace its copy and media, then render variations through the Zvid API.

10 variables: Every value below is a variable you can override — send them in the variables field of the render request (or edit them in the editor) to generate on-brand versions at scale.

brandNameText
DERMA PURE
productNameText
Barrier Repair Serum
whatItIsText
A ceramide-rich concentrate that rebuilds your skin barrier while you sleep.
howToUseText
3 drops, morning and night, on clean skin. That's the whole routine.
ctaTextText
Add to cart
productImageMedia URL
textureImageMedia URL
benefitsList · 3
titleRepairs overnight
detailCeramides + peptides rebuild while you rest
titleCalms visible redness
detailCentella extract soothes reactive skin fast
titleZero irritation formula
detailNo fragrance, no alcohol, no drama
musicUrlMedia URL

The exact JSON payload

This is the full render config — POST it to the API, or open it in the editor to tweak.

Open in editor ↗
{
  "name": "ecom-pdp-explainer",
  "resolution": "instagram-post",
  "frameRate": 30,
  "backgroundColor": "#FAFAF7",
  "outputFormat": "mp4",
  "variables": {
    "brandName": "DERMA PURE",
    "productName": "Barrier Repair Serum",
    "whatItIs": "A ceramide-rich concentrate that rebuilds your skin barrier while you sleep.",
    "howToUse": "3 drops, morning and night, on clean skin. That's the whole routine.",
    "ctaText": "Add to cart",
    "heroVideo": "https://videos.pexels.com/video-files/5927936/5927936-hd_1080_1920_25fps.mp4",
    "productImage": "https://images.pexels.com/photos/8101534/pexels-photo-8101534.jpeg?auto=compress&cs=tinysrgb&w=1620",
    "textureImage": "https://images.pexels.com/photos/15930068/pexels-photo-15930068.jpeg?auto=compress&cs=tinysrgb&w=1620",
    "benefits": [
      {
        "title": "Repairs overnight",
        "detail": "Ceramides + peptides rebuild while you rest"
      },
      {
        "title": "Calms visible redness",
        "detail": "Centella extract soothes reactive skin fast"
      },
      {
        "title": "Zero irritation formula",
        "detail": "No fragrance, no alcohol, no drama"
      }
    ],
    "musicUrl": "https://cdn.pixabay.com/audio/2025/04/21/audio_ed6f0ed574.mp3"
  },
  "scenes": [
    {
      "id": "opener",
      "duration": 3.6,
      "backgroundColor": "#FAFAF7",
      "transition": "fade",
      "transitionId": "about",
      "transitionDuration": 0.5,
      "visuals": [
        {
          "type": "VIDEO",
          "src": "{{heroVideo}}",
          "width": 1080,
          "height": 1080,
          "position": "center-center",
          "resize": "cover",
          "volume": 0,
          "track": 0,
          "enterBegin": 0,
          "exitEnd": 3.6
        },
        {
          "type": "SVG",
          "width": 1080,
          "height": 1080,
          "track": 1,
          "enterBegin": 0,
          "exitEnd": 3.6,
          "svg": "<svg width='1080' height='1080' viewBox='0 0 1080 1080' xmlns='http://www.w3.org/2000/svg'><defs><linearGradient id='pdpShade' x1='0' y1='0' x2='0' y2='1'><stop offset='0' stop-color='#20241C' stop-opacity='0.4'/><stop offset='0.55' stop-color='#20241C' stop-opacity='0.05'/><stop offset='1' stop-color='#20241C' stop-opacity='0.72'/></linearGradient></defs><rect width='1080' height='1080' fill='url(#pdpShade)'/></svg>"
        },
        {
          "type": "TEXT",
          "x": 70,
          "y": 850,
          "width": 940,
          "anchor": "top-left",
          "track": 2,
          "enterBegin": 0.3,
          "enterEnd": 0.75,
          "enterAnimation": "smoothup",
          "exitEnd": 3.6,
          "style": {
            "fontFamily": "Manrope"
          },
          "html": "<div style='color:#FFFFFF; font-size:58px; line-height:1.05; font-weight:800; letter-spacing:-1px;'>{{productName}}</div><div style='margin-top:10px; color:#D9DCD2; font-size:22px; font-weight:600; letter-spacing:4px;'>{{brandName}} · SKINCARE THAT WORKS</div>"
        }
      ]
    },
    {
      "id": "about",
      "duration": 4.2,
      "backgroundColor": "#FAFAF7",
      "transition": "smoothleft",
      "transitionId": "benefit",
      "transitionDuration": 0.5,
      "visuals": [
        {
          "type": "IMAGE",
          "src": "{{productImage}}",
          "x": 300,
          "y": 540,
          "width": 520,
          "height": 940,
          "anchor": "center-center",
          "resize": "cover",
          "zoom": true,
          "radius": {
            "tl": 28,
            "tr": 28,
            "bl": 28,
            "br": 28
          },
          "track": 1,
          "enterBegin": 0,
          "enterEnd": 0.5,
          "enterAnimation": "smoothright",
          "exitEnd": 4.2
        },
        {
          "type": "SVG",
          "width": 1080,
          "height": 1080,
          "track": 0,
          "enterBegin": 0,
          "exitEnd": 4.2,
          "svg": "<svg width='1080' height='1080' viewBox='0 0 1080 1080' xmlns='http://www.w3.org/2000/svg'><rect width='1080' height='1080' fill='#FAFAF7'/><circle cx='860' cy='200' r='260' fill='rgba(123,144,107,0.12)'/><circle cx='940' cy='900' r='180' fill='rgba(123,144,107,0.09)'/></svg>"
        },
        {
          "type": "TEXT",
          "x": 600,
          "y": 300,
          "width": 420,
          "anchor": "top-left",
          "track": 2,
          "enterBegin": 0.4,
          "enterEnd": 0.85,
          "enterAnimation": "smoothup",
          "exitEnd": 4.2,
          "style": {
            "fontFamily": "Manrope"
          },
          "html": "<div style='color:#7B906B; font-size:20px; font-weight:800; letter-spacing:4px;'>WHAT IT IS</div><div style='margin-top:14px; color:#23281F; font-size:34px; line-height:1.35; font-weight:700;'>{{whatItIs}}</div>"
        }
      ]
    },
    {
      "id": "benefit",
      "iterate": "benefits",
      "iterateAs": "benefit",
      "duration": 3,
      "backgroundColor": "#EFF2EA",
      "transition": "smoothleft",
      "transitionId": "usage",
      "transitionDuration": 0.5,
      "visuals": [
        {
          "type": "SVG",
          "width": 1080,
          "height": 1080,
          "track": 0,
          "enterBegin": 0,
          "exitEnd": 3,
          "svg": "<svg width='1080' height='1080' viewBox='0 0 1080 1080' xmlns='http://www.w3.org/2000/svg'><rect width='1080' height='1080' fill='#EFF2EA'/><circle cx='540' cy='400' r='120' fill='#7B906B'/><path d='M485 400 L525 442 L600 358' stroke='#FFFFFF' stroke-width='16' fill='none' stroke-linecap='round' stroke-linejoin='round'/><circle cx='540' cy='400' r='150' fill='none' stroke='rgba(123,144,107,0.4)' stroke-width='2'/></svg>"
        },
        {
          "type": "TEXT",
          "x": 540,
          "y": 620,
          "width": 880,
          "anchor": "top-center",
          "track": 2,
          "enterBegin": 0.25,
          "enterEnd": 0.7,
          "enterAnimation": "smoothup",
          "exitEnd": 3,
          "style": {
            "fontFamily": "Manrope"
          },
          "html": "<div style='text-align:center; color:#23281F; font-size:52px; line-height:1.1; font-weight:800;'>{{benefit.title}}</div><div style='margin-top:16px; text-align:center; color:#5E6656; font-size:27px; line-height:1.45; font-weight:500;'>{{benefit.detail}}</div>"
        },
        {
          "type": "TEXT",
          "x": 540,
          "y": 80,
          "anchor": "center-center",
          "track": 1,
          "enterBegin": 0,
          "exitEnd": 3,
          "style": {
            "fontFamily": "Manrope"
          },
          "html": "<div style='color:#8B937F; font-size:19px; font-weight:700; letter-spacing:6px;'>{{brandName}} · {{productName}}</div>"
        }
      ]
    },
    {
      "id": "usage",
      "duration": 3.8,
      "backgroundColor": "#FAFAF7",
      "transition": "fade",
      "transitionId": "outro",
      "transitionDuration": 0.5,
      "visuals": [
        {
          "type": "IMAGE",
          "src": "{{textureImage}}",
          "width": 1080,
          "height": 1080,
          "position": "center-center",
          "resize": "cover",
          "zoom": true,
          "track": 0,
          "enterBegin": 0,
          "exitEnd": 3.8
        },
        {
          "type": "SVG",
          "width": 1080,
          "height": 1080,
          "track": 1,
          "enterBegin": 0,
          "exitEnd": 3.8,
          "svg": "<svg width='1080' height='1080' viewBox='0 0 1080 1080' xmlns='http://www.w3.org/2000/svg'><defs><linearGradient id='useShade' x1='0' y1='1' x2='0' y2='0'><stop offset='0' stop-color='#20241C' stop-opacity='0.75'/><stop offset='0.55' stop-color='#20241C' stop-opacity='0.1'/><stop offset='1' stop-color='#20241C' stop-opacity='0.25'/></linearGradient></defs><rect width='1080' height='1080' fill='url(#useShade)'/></svg>"
        },
        {
          "type": "TEXT",
          "x": 70,
          "y": 780,
          "width": 940,
          "anchor": "top-left",
          "track": 2,
          "enterBegin": 0.3,
          "enterEnd": 0.75,
          "enterAnimation": "smoothup",
          "exitEnd": 3.8,
          "style": {
            "fontFamily": "Manrope"
          },
          "html": "<div style='color:#CFE3BF; font-size:21px; font-weight:800; letter-spacing:4px;'>HOW TO USE</div><div style='margin-top:12px; color:#FFFFFF; font-size:36px; line-height:1.3; font-weight:700;'>{{howToUse}}</div>"
        }
      ]
    },
    {
      "id": "outro",
      "duration": 3.8,
      "backgroundColor": "#23281F",
      "visuals": [
        {
          "type": "SVG",
          "width": 1080,
          "height": 1080,
          "track": 0,
          "enterBegin": 0,
          "exitEnd": 3.8,
          "svg": "<svg width='1080' height='1080' viewBox='0 0 1080 1080' xmlns='http://www.w3.org/2000/svg'><defs><radialGradient id='pdpOut' cx='0.5' cy='0.4' r='0.9'><stop offset='0' stop-color='#33402B'/><stop offset='1' stop-color='#23281F'/></radialGradient></defs><rect width='1080' height='1080' fill='url(#pdpOut)'/><circle cx='540' cy='360' r='120' fill='none' stroke='rgba(207,227,191,0.5)' stroke-width='1.5'/><circle cx='540' cy='360' r='96' fill='none' stroke='rgba(207,227,191,0.8)' stroke-width='2'/></svg>"
        },
        {
          "type": "TEXT",
          "x": 540,
          "y": 360,
          "anchor": "center-center",
          "track": 1,
          "enterBegin": 0.2,
          "enterEnd": 0.6,
          "enterAnimation": "fade",
          "exitEnd": 3.8,
          "style": {
            "fontFamily": "Cormorant Garamond"
          },
          "html": "<div style='text-align:center; color:#CFE3BF; font-size:64px; font-weight:700;'>DP</div>"
        },
        {
          "type": "TEXT",
          "x": 540,
          "y": 560,
          "width": 900,
          "anchor": "top-center",
          "track": 2,
          "enterBegin": 0.5,
          "enterEnd": 0.95,
          "enterAnimation": "smoothup",
          "exitEnd": 3.8,
          "style": {
            "fontFamily": "Manrope"
          },
          "html": "<div style='text-align:center; color:#FFFFFF; font-size:46px; line-height:1.15; font-weight:800;'>Your barrier called.<br>It wants this serum.</div>"
        },
        {
          "type": "TEXT",
          "x": 540,
          "y": 780,
          "anchor": "top-center",
          "track": 3,
          "enterBegin": 1,
          "enterEnd": 1.4,
          "enterAnimation": "circleopen",
          "exitEnd": 3.8,
          "style": {
            "fontFamily": "Manrope"
          },
          "html": "<div style='display:inline-block; background:#CFE3BF; color:#23281F; border-radius:999px; padding:22px 58px; font-size:30px; font-weight:800;'>{{ctaText}}</div>"
        }
      ]
    }
  ],
  "audios": [
    {
      "src": "{{musicUrl}}",
      "volume": 0.15,
      "track": 0
    }
  ]
}

More E-commerce templates

View all ↗

Ready to ship video at scale?

Start free — your first render is only a JSON payload away.