Create Your Script

The script is parsed from a tab or sheet called "Settings" within your Google Sheet.

You can see an example script here.

Script Features

  • Linear and/or branching conversation flows
  • Question responses that can be simple buttons, buttons that send text messages, or free-form text inputs
  • Customizable button colors
  • Non-English characters and emojis

Script Syntax

Text Substitution

Any value from the Contacts sheet can be substituted into the script text or repsonse options using double curly braces.

For example, a question written as "Hi {{First Name}}..." will have the value from the contact's First Name column in the Contacts sheet substituted in.


The script starts underneath a cell in the first row (the header row) with the text Script. For example:

Question TitleScript TextResponsesResponse ValuesNext Question
Call ResultHi, is this...?YesYesSupport
NoNoNext Contact
SupportWill you vote for...?YesYesVolunteering
UndecidedUndecidedMore Info
NoNoNext Contact

Question Title

This column contains the question title. Responses to this question are saved in a column with the question title as the header in the Results. The question title is also used by the "Next Question" column to determine the script flow.

Note: The question title is not displayed to callers.

Script Text

This column contains the script text or question the caller should ask.


This column contains the question responses. There are two types of responses:

  • Text Inputs

    Cells where the text is wrapped with double angle brackets (for example: "<<Some Text>>") are treated as free-form text inputs. The text between the angle brackets is the placeholder text.

    There can only be one text input per question. If you want multiple inputs on the same page, put multiple questions each with one input.

  • Buttons

    Any other non-empty Response cell are used as the labels for buttons in the script.

    The text color and background color of the cells are applied to the corresponding buttons in the script.

    To include emojis on a button label, you can search for the emoji you want on a website like Emoji Copy, copy the emoji character, and paste it into the Google Sheets cell.

Response Values

This column contains the values to be saved in the Results when the button is pressed. This allows you to use a more descriptive or more fun (for example, including emojis) button label while saving the results in a simpler or more normalized form.

If a "Response Value" is not set, the button label is used instead.

Next Question

This column indicates the next question the caller should see after selecting a given question response.

Important: If the "Next Question" value is not blank and is set to the title of a script page that does not exist (for example, "Next Contact"), selecting that response will load the next contact.

Advanced: Text Message Templates

Script buttons can trigger sending text messages with messages you setup. To enable this, add another column to the Script with the header "Text Message".

If a Response row also has a value in the "Text Message" column, clicking on that button in the script will open the caller's messaging app with the contact's phone number and the text message body already filled in.

You can substitute any values from the Contacts sheet into the text message body. For example, "Hi {{First Name}}..." or "Sign up for our event here: {{Event Signup Link}}..." (if you had an "Event Signup Link" column in your Contacts sheet.)

Advanced: Multiple Questions Per Page

By default, the system will only display one question at a time to the callers.

To show multiple questions at once, prefix each question title with the page name followed by a colon. For example:

Question TitleScript TextResponsesResponse ValuesNext Question
First Page: Question 1Question 1 TextResponse 1AResponse Code 1
Response 1BResponse Code 2Next Contact
First Page: Question 2Question 2 TextResponse 2AResponse Code 1Second Page
UndecidedResponse Code 3Third Page
NoResponse Code 2Next Contact
Second Page: Question 3Question 3 TextResponse 3AResponse Code 1Third Page

Next, configure the phonebank title and contact panel with the Other Settings.