Using Dynamic Text

Dynamic text lets a piece of writing fill itself in. You write one sentence, and every visitor sees their own version of it: their town, the option they picked, your phone number. You'll see it written in curly brackets, like {site.phone}, and you never have to type that yourself: wherever it's available, there are buttons under the box that drop it in for you.

The quick version

Write this:

Your {answer.flooring} floors in {table.service-areas.ZIP>Town}, made affordable

A visitor sees this:

Your Luxury Vinyl Plank floors in Greenville, made affordable

The five kinds

Looks like Fills in with
{site.phone} Your own details: business name, phone, email, address.
{answer.flooring} What someone chose or typed in your quiz.
{table.service-areas.ZIP>Town} A look-up in one of your own Data tables. See below.
{geo.city} The city someone is browsing from.
{custom.field.locationName} A field on the Item being shown, on a Content Type page.

Where each one works

This is the part worth reading, because a piece of dynamic text that has nothing to fill in with simply shows nothing at all. It never shows the brackets to a visitor, but it doesn't warn you either.

  • Your own details work everywhere.
  • Answers, tables and location only work on a quiz results screen. They need someone to have actually filled your form in, so on an ordinary page there's nothing to fill them with.
  • Item fields only work on a Content Type's item page, where there's an Item behind the page.

You don't have to memorise this. The buttons under each box only offer what actually works there.

Data tables: your own look-up lists

A Data table is a spreadsheet your site can read. Go to Content → Data tables, give it a name, and paste your columns straight out of Excel, Numbers or Google Sheets.

ZIP     Town          Region
29601   Greenville    Upstate
28801   Asheville     Western NC
296*    the Upstate   Upstate

Now a ZIP code someone typed can become a town name in your copy. The same table works in both directions: you can look up a town by its ZIP, or a ZIP by its town, because you choose which column to look up by and which one to show.

Three rules

  • The first matching row wins. So put your most specific rows at the top.
  • A * means "anything starting with this". In the example above, 296* catches every other ZIP in that range that isn't already listed by name above it.
  • Up to 5,000 rows per table.

When nothing matches

Every table has a When nothing matches box. If someone's ZIP isn't in your table, that's what they see instead, and it can use dynamic text of its own:

We don't service {geo.city} yet. Tell us where and we'll let you know when we do.

Leave it empty and they simply see nothing there, which is usually right if the phrase is decorative. Fill it in when a miss deserves a real answer, like telling someone you're not in their area yet.

Match the length to where it sits. If the look-up is in the middle of a sentence, keep the fallback to a few words, because a whole sentence lands there as a non sequitur:

Your sentenceA good fallback
"Your new floors in {table…}, made affordable"your area
A line of its ownWe don't service {geo.city} yet. Tell us where and we'll let you know when we do.

Common things to try

  • Use their name. "Thanks {answer.firstName}, here's your price"
  • Use their town. "Trusted by {table.service-areas.ZIP>Town} homeowners"
  • Reflect their choice back. "Your {answer.flooring} quote"
  • Qualify politely. Let the table's When-nothing-matches box say you're not in their area yet.

Good to know

  • Nothing is ever shown half-finished. If a value is missing, the sentence closes up around the gap. Visitors never see the brackets.
  • It won't go in a link. Dynamic text is for words on the page, not for web addresses or buttons' destinations.
  • Renaming breaks it. If you rename a question or a column, anything pointing at the old name stops filling in. Re-pick it from the buttons and it's fixed.
  • To show the brackets on purpose, put a backslash first: \{site.phone} displays as ordinary text.

Answers, tables and location all resolve on a quiz results screen. See Quizzes & Instant Estimates for how to build one and how the price is worked out.

Was this helpful?