Platform Editor Pricing Docs Sign In Get Started

Chapter 25: Conditions and Interactivity

A template does not have to render the same thing every time, and a published movie does not have to be something people only watch. This chapter covers the three features that make a template react to data and to clicks: visibility conditions, click actions, and the endcard.

All three build on variables — see Chapter 13 if you haven’t set any up yet.

Visibility conditions

Scene-level conditions (optional and choice scenes) are covered in Chapter 13. The same mechanism exists on individual layers: a layer with a condition renders only when the condition holds against the template’s variable values.

Select a layer and open the Visibility Condition section in the Layer properties. Tick Only show when… and fill in:

FieldMeaning
VariableWhich variable to test (the dropdown lists every variable used or defined in the template; + adds a new one)
OperatorHow to test it
Value / ValuesThe comparison operand, when the operator needs one

The operators:

OperatorTrue when
is setThe variable has a value
is not setThe variable is undefined or empty
equalsThe value matches exactly
does not equalThe value does not match
is one ofThe value is in the list you provide

A variable with no value counts as empty, in the preview and in the render alike: equals with an empty value is true for it, and so is does not equal with any other value. Right after you pick equals or does not equal, before you type a value, equals matches nothing and does not equal matches everything.

A condition works on every kind of layer, audio included. A narration or music layer with a condition plays only when it holds, and so does a Volume Adjustment: when its condition is false it does not turn anything down. A layer inside a group follows the group’s condition only: as with visual layers, a condition set on the layer itself is ignored once it sits in a group. This is how one scene carries a separate voiceover per recipient or destination; give each its own condition and only the matching one is heard, in the preview and in the render alike.

When to use a layer condition instead of an optional scene

  • Layer condition — the scene is the same either way, but one badge, price line, or disclaimer only applies to some recipients.
  • Optional scene — the whole beat only exists for some recipients.

Use the narrower one. Twelve conditional layers in one scene are harder to reason about than two scenes.

Transitions around skipped scenes

A scene transition belongs to the scene you leave (see Chapter 2). A scene is skipped when:

  • it is an optional scene whose condition is false, or
  • it is a choice scene whose variable is empty or matches none of its variants

The scene before a skipped scene then transitions straight into the next scene that plays, using its own transition. The skipped scene’s transition is not used.

For example, with scene A (crossfade), scene B (optional, push left) and scene C:

B plays?What you see
YesA crossfades into B, then B pushes left into C
NoA crossfades into C
  • If several scenes in a row are skipped, the transition leads into the first scene after them that plays
  • If the scenes at the end are skipped, the last scene that plays ends the video and its transition is dropped
  • A transition’s length does not depend on which scenes play. It is at most half the length of any scene it could lead into, so a short optional scene can shorten the transition before it even when that scene is skipped. A choice scene counts with its shortest variant

The preview follows the values in the Variables panel, so you can check each version before rendering: change a value and play Preview Entire Video again.

The default variant

The Default button next to a choice scene’s variants only picks which variant the editor shows while you edit. It is never used when the video plays or renders: with no matching value, nothing plays for that scene and its neighbours transition into each other.

To make a variant play for recipients who have no value, give the variable a default value in the Variables panel that matches that variant’s key.

Prepared in advance

A choice scene’s variant keys, and the values your conditions test for, are also what the render service prepares in advance when you publish, so those scenes start faster for recipients. It works per value: a recipient who sends a listed value gets the prepared scene, and one who sends no value (and so gets the default) or a value nobody listed gets the same scene rendered live. See Values and Pre-encoding.

Click actions

Any layer can become a clickable hotspot in the published player. Open the Click Action section in the Layer properties and tick Clickable:

FieldMeaning
ActionOpen web page (default) or Play movie — see below
URLWhere the click goes. May contain {variables} — e.g. https://example.com/offer/{customerId}
Opens inNew tab (default) or same tab
Tracking IDAnalytics identifier for the click; defaults to the layer’s id

The hotspot is the layer’s box. That means an invisible shape layer over an area of a video is a perfectly good button, and a text layer is clickable across its whole box rather than only its glyphs.

Give the Tracking ID a readable name — cta-book-demo reads better in an analytics report than a generated element id.

Play another movie (choose your own story)

Set Action to Play movie and the hotspot plays another published movie in the same player instead of opening a page. Put two of them on an endcard — “A” and “B” — and the viewer decides how the story continues; each branch can end on its own endcard with further choices.

FieldMeaning
ProjectThis project, or another project of your account in the same region
MovieA movie published in that project
Set variablesOptional name/value pairs set on the next movie, e.g. choice = A. Values may contain {variables}

Every variable of the video being watched is passed on to the next one, so a name entered once personalises the whole story; Set variables adds to them or overrides them.

  • Publish every movie of the story. A link to a movie that is not published fails when clicked.
  • The player starts rendering the branches as soon as the endcard appears, so the chosen one starts quickly. Every branch shown is rendered, picked or not.
  • Opens in does not apply: a movie always plays in the same player.
  • Links into another account’s project, or a project in another region, are ignored. A link into another of your projects that requires authenticated renders only works for viewers allowed to render it.

The link is stored in the URL as movie://<project>/<movie>?name=value — movie:///<movie> for the same project — which is also how to write one by hand or through the MCP tools.

Click actions do nothing in the editor canvas. They come alive in the published player.

Endcards

An endcard is a still frame the player shows after the video finishes — the natural home for a call to action, because it stays on screen and its clickable layers stay clickable.

Mark a scene as an endcard in the Scene tab of the right sidebar: open the Endcard section and tick Use as endcard.

What changes:

  • The scene leaves the video timeline. It is not rendered as part of the movie and contributes no duration.
  • It publishes separately as a still, and the player shows it when playback ends.
  • Its clickable layers become links on that still.

A template has at most one endcard. Marking a second scene clears the flag on the first.

The replay button

By default the player centres a replay button on the endcard. If it would land on top of your call to action, either move the element or untick Show replay button in the Endcard section.

Designing an endcard

  • Build it like a poster, not like a scene: it is a single frame with no motion.
  • Put the primary action where the replay button isn’t.
  • Give every clickable region a distinct Tracking ID so you can tell which one people press.
  • Variables work here too — an endcard reading “Talk to {repName}” personalises per recipient.

Putting them together

A common personalised-video shape:

  1. Variables carry the recipient’s data.
  2. Optional scenes drop whole beats that don’t apply.
  3. Layer conditions swap the badge or price line within a shared scene.
  4. An endcard closes with a {customerId}-parameterised booking link.
  5. Tracking IDs tell you which link got pressed.

Troubleshooting

The conditional layer never appears. Check the variable’s value in the Variables panel. is set is false for an empty string, not just an absent variable.

The condition dropdown has no variables. It lists variables that are used or defined in the template. Add one with the + next to the field.

A different transition plays than the one I set. The scene you set it on is probably skipped for the current variable values. A skipped scene’s transition is not used: the scene before it leads into the next scene that plays with its own transition. Check the Variables panel.

A choice scene is missing from the video. Its variable is empty or matches no variant’s key. The Default variant does not fill in; set a matching default value in the Variables panel.

Clicking does nothing. Click actions are inert in the editor. Publish and test in the player.

The endcard shows up in the middle of the video. It isn’t marked as an endcard — check the Use as endcard box in the Scene tab. Marking it removes it from the timeline.

The replay button covers my button. Move your element, or turn the replay button off in the Endcard section.


← Previous: Motion Tracking | Next: Publishing →