Tree Building Best Practices

  • Updated

Naming Convention

Trees and Nodes

A good (but short) description goes a long way in allowing you to quickly know what the Tree or the Node refers to. Establish a convention and try to follow it as best as possible.

    • Examples:
      • Tree "Business Hours"
      • Node ⇒ "Open"
      • Node ⇒ "Close"


Stay consistent in the way you choose your variable names. Develop a naming convention that you can remember easily and remain consistent in that naming convention. We like using a lowercase format with underscores between words. Like this:

  • Variable names may contain letters, numbers, underscores (_), and dash (-) characters only. Variable names may not start with a number.
  • When data is imported from external sources such as data connectors, any invalid character is replaced with an underscore (_).

Tree Length

While you have the ability to build Trees with up to 1,000 nodes, we recommend breaking them into smaller and more manageable trees of up to 150 nodes. You can do this by utilizing a Tree Node which will connect a Tree to another without breaking the flow of the end-user.

Breaking up your workflows into smaller chunks (eg. a Tree for returns and a separate Tree for product defects) will allow you to more effectively manage and maintain your content.

Node Structure

You will want to make the content of each node digestible to the end-user. There is a fine balance between "click fatigue" and overwhelming the end-user with too much information. A good rule of thumb is that the end-user should not have to scroll far down to see all the content of a node.

Leveraging Zingtree's Powerful Tools


Tags can be applied to both Trees and/or Nodes in a variety of ways:

  • Organize your content: you can create as many tags as you'd like and filter the Trees/Nodes to filter based on these.
  • Agent Portal: Tree tags can give access to specific Trees based on the agent's needs through the agent portal (eg. tag a tree Outbound and only the agents who have access to that tag will be able to see the tree). Use tag matching to accomplish this. Tag your trees and the agents you want to see them with a matching tag - more info here.
  • Zendesk: Automatic Script Selection: The Agent Scripting App can choose a script based on the Zendesk brand, Zendesk ticket tags, or the value of a custom field. - more info here.
  • Search Forms: you can use tags to resurface nodes based on the search terms used by the end-user. This allows the end-user to go directly to the relevant information when they what they are looking for - more info here.
  • Tag Lists: Create a list of nodes matching a tag. This is a great way to display a Knowledge Base of content. More info here.


Variables are a great way to collect, resurface and/or make decisions based on the data collected throughout a session. We recommend using variables for reporting purposes as well (eg. you offer incentives to retain a churning client and want to understand which incentive has the best outcome based on location/age group/type of product). Below are 2 ways to collect information:

  • Button Click Variables: assign text or numeric values to variables when buttons are clicked from any node - more info here.
  • Data Entry Fields: ask users to input text, select from list boxes, or click checkboxes or radio buttons. This data is collected as a part of the session and is easily imported into other applications - more info here.

Logic Nodes

Logic nodes are a great way to make complex flows simpler. By using the data (variables) collected throughout the session, you can redirect to the relevant path (eg. Value of the return is less than $50 AND the item was bought less than 7 days ⇒ automatically accepted; however if either one of these statements is false ⇒ go through the approval process). You can configure logic nodes in 2 ways:

  • Simple Logic: Logic Nodes let you jump to different parts of your tree, based upon rules defined using the value of a variable. Simple Logic Nodes appear by default. They are easy to use and understand - more info here.
  • Advanced Logic: if you need more advanced operations you can take advantage of the Advanced option in the Logic Node Editor. You can use parenthesis, as well as comparison and logical operators to build complex rules - more info here.

Email Nodes

Email nodes allow you to automatically send an email at any point during the tree. You can send an email directly to your client with the information requested or trigger an email to a supervisor if it reached a specific escalation threshold in the session - more info here.


Integrating Zingtree into other systems of records is a great way to streamline data flow and avoid redundant work. All the information collected in a Tree can seamlessly be sent to other systems via native integration, merge variables, webhooks, or JS. Similarly, you can pull data from other sources into the Trees.

  • Salesforce
    • Agent Scripting App - see details here.
  • Zendesk
    • Agent Scripting App - see details here.
    • Ticket Creation App - see details here.
  • Freshdesk
    • Agent Scripting App - see details here.
  • Other - see details here.
  • Webhooks - see details here.
  • Zapier - see details here.
  • Inject your own code to execute tasks at the Tree level - Tools > Settings > Code


Was this article helpful?

2 out of 2 found this helpful

Have more questions? Submit a request

Didn't find what you need?

Our friendly customer support team is here to help

Submit a Ticket

Looking for help or advice?

Reach out to our knowledgeable community of users.

Zingtree Community