Advanced Script Writing

As you begin working on building your ThruTalk (Legacy) scripts there may be times when you realize that your calling needs are not being served by your current script. You may want to be able to use different verbiage depending on the demographics of your contacts or to run multiple scripts in the same phone bank without splitting your volunteers across multiple services. ThruTalk (Legacy) scriptwriting will now allow you to do both using advanced variables and advanced script branching.

Advanced Variables

Advanced script variables allow you to have slightly different language for different contacts. For example, when running a GOTV script, you might want to have your phone-bankers thank a contact for being a regular voter and/or remind nonvoters of the importance of voting. In the past, you’d either have to put language for both scenarios in the script and rely on your volunteer to read the contact info box or use complex custom fields to see which language they should use. Using advanced variables, that’s no longer necessary. You will be able to program into the script which specific wording you want to be displayed for your phone banker to read depending on whether a value for a specified custom field is present in the list you’re calling.


To make this work you will need to prepare your lists for this script format and then build the wording options into the script.

Advanced variable scripts work by looking for a value in the column a specified custom field is mapped to. If the contact’s row contains a value, one set of wording will be displayed for your phone banker to read. If the contact’s row does not contain a value, the other wording will be used. Keep in mind that this works on a binary basis, either there is a value in the cell or there isn’t, advanced variables will not allow you to set up script language for more than two options. For detailed instructions on how to set up Advanced Variables in your script, please see the linked support article here.

Advanced Script Branching

If, however, your needs are a bit more complex and you want to be able to have several unique scripts depending on what value a certain custom field contains, you’ll need to use advanced script branching. This will allow your phone bankers to select a specific script matched to a certain custom field that you specify. This will give you free rein to run multiple scripts from a single phone bank without having to maintain a separate service in your ThruTalk (Legacy) account. For organizations with a small base of volunteers, this will allow you to run multiple scripts without worrying about reduced call speeds because phone bankers are split across multiple services. Because advanced script branching works by looking at the contact’s custom field’s value rather than the presence/absence of a value, you can run as many subscripts as needed.

To utilize this feature, you will need to prepare your lists for this script format as well, building the script itself is essentially the same as traditional script building. Inside your list, you will need a column containing the information you want to use to determine which script should be used for that contact. Many organizations use data like election district if they’re calling on behalf of multiple candidates or persuasion/turnout/ballot chase, either way, you will need to have a single column that contains the information that tells your phone banker which script they should be choosing.

On the script side of things, our advanced script branching question type will have you designate the custom field that is to be used to display the information, and then you will specify the number of answer choices. Each answer choice will lead to the start of the script for that script type, i.e. if you’re running a multi-candidate script and have designated the electoral district as your differentiator, each answer choice would lead to a unique script for that candidate/electoral district. While the advanced script branching question type is not available in our templates, you can reach out to our support team and have us port that script type into your script manager; from there it’s just a matter of writing each script normally and adjusting the visible-if logic in your script such that you build as many unique scripts as you need to. Keep in mind that you should probably duplicate the template once we place it into your script manager so that you retain a clean copy to build future branched scripts from.

If you need help with Advanced Script Variables or Branching you can always reach out to our support team at or if you’d like a member of our staff to proofread a script you’ve created you can also request a Script Review directly from your ThruTalk (Legacy) Admin Panel.