Why aren’t my personalization variables being replaced?
Short answer
Look at what the viewer sees. If the placeholder itself shows, such as {{first-name}}, the syntax is wrong. If the space is blank, the variable has no value at that moment. Always test in Preview or on the share link, because the editor does not set variables.
How to do it
Copy link to How to do it- Open Preview or the share link in a private window. The editor never fills in variables.
- If you see the braces on screen, fix the placeholder: two braces on each side and only letters, numbers, and underscores in the name. Change {{first-name}} to {{first_name}}.
- If you see a blank, check where the value comes from and that it is set before the interaction appears.
- Test with a known value in the link, for example ?name=Test.
- Check that each value in the link is URL-encoded. A + becomes a space, so write an email such as ana+demo@example.com as ana%2Bdemo%40example.com.
- Check that your plan includes personalization variables (Core and higher).
What does not cause the problem
Copy link to What does not cause the problem- Capital letters: {{NAME}}, {{Name}}, and {{name}} are the same variable.
- Spaces inside the braces: {{ name }} works.
- The address bar: the player removes link parameters after it reads them.
Empty values are ignored
Copy link to Empty values are ignoredA parameter with no value, such as ?name=, does not set the variable. An empty answer does not clear a value that was set earlier.
Which value wins
Copy link to Which value winsWhen several sources set the same variable, the last one wins. When the video loads, a personalized link is read first, then the remembered viewer, then the link parameters. During playback, each answer, click, or navigation replaces the value again. Use one source for each variable when you can.
Values from an embed
Copy link to Values from an embedFor an embedded video, the parameters must be on the iframe src, not on your page’s address. See How do I pass URL parameters into an embedded video?.
Give missing values a fallback
Copy link to Give missing values a fallbackLinks are forwarded and viewers skip optional fields. Write copy that still reads well without the value, or show it only when the variable Exists.