---
sourceDocument: Brazil Build or modify applications
sourceDocumentLink: https://www.servicenow.com/docs/r/application-development

 Release :

    - brazil

ft:locale :

    - en-US

ft:publication_title :

    - Brazil Build or modify applications

ft:clusterId :

    - cadev

bundleId :

    - cadev

workflow :

    - Development, Data, and Analytics


---

# Decision Tables

# Decision Tables {#ariaid-title1}

Release version: Brazil  
Updated September 10, 2026  
![](https://www.servicenow.com/docs/portal-asset/ico-clock) 2 minutes to read
Summarize  
![AI sparkle icon](https://servicenow.com/docs/portal-asset/ai-sparkle-icon) Summarized using AI  
This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.  

## Summary of Decision Tables

Decision tables in ServiceNow allow you to separate decision logic from code by creating and managing decision rules in a structured, readable format.
They help you determine outcomes based on multiple input factors, improving organization and saving time compared to scripting.
Though decision tables can be created traditionally, it is recommended to use Workflow Studio for an integrated authoring and monitoring experience.
Show full answer Show less  

## Key Features

* **Decision Table Records (\[sysdecision\]):** Define the overall decision and specify the table used for answers. They serve as the central place to create and modify decisions.
* **Decision Inputs (\[sysdecisioninput\]):** Represent the input factors influencing decisions, such as strings, references, booleans, or dates. Inputs have defined types and can have default values.
* **Decisions (\[sysdecisionquestion\]):** Conditions based on decision inputs that determine which answer is selected. Conditions are built using a condition builder linked to the inputs.
* **Answers (\[sysdecisionmultiresultelement\]):** The possible outcomes or results returned when decisions are met. Answers can come from any table chosen when creating the decision table, allowing flexibility (e.g., insurance coverage levels).
* **DecisionTableAPI:** Provides scripting access to interact with decision tables programmatically.

## Practical Use and Benefits

Decision tables enable ServiceNow customers to centralize and simplify complex decision-making logic involving multiple criteria. For example, in insurance coverage decisions, inputs like location, age, and vehicle details determine the coverage outcome, all maintained in one place. This structure enhances maintainability, readability, and reduces the need for custom scripts.

## Classic Environment Notes

In the classic environment, you develop a table for your decision answers and associate specific answer records with decisions on the decision table. When input conditions are met, the linked answer record is returned, facilitating straightforward decision automation.  
Use decision tables to decouple decision logic from your code by creating and maintaining decision rules.  
Important:  
Try creating decision tables in Workflow Studio instead. Workflow Studio integrates workflow authoring, configuring, and monitoring into a single page experience. For more information, see [Create decision tables in Workflow Studio](https://www.servicenow.com/docs/access?context=create-decision-table-in-decision-designer&version=brazil&pubname=brazil-build-workflows&ft:locale=en-US).

Use decisions tables to help you reach outcomes that depend on multiple factors. In these
tables, each factor is a decision input. For example, if you are trying to make a decision about
car insurance coverage, your inputs might include the location where the insured person lives,
the age and accident history of the insured person, the car make, the car model, and the car
year. This logic can save time and present a more organized, readable format than using a script.
Decision tables provide a single point where you can create, view, and modify decisions.

To interact with Decision Tables in script, use the [DecisionTableAPI - Scoped, Global](https://www.servicenow.com/docs/access?context=DecisionTableAPI&version=brazil&pubname=brazil-api-reference&ft:locale=en-US).

## Components of a decision {#decision-table__section_szj_l1h_3fb}

Decision Table \[sys_decision\] records
:   Decision table records represent a single decision. In this record, you specify which table
    you want to use for your answers. This record also contains related lists where you can create
    your decision inputs and decisions.

Decision inputs \[sys_decision_input\] records
:   Decision input records represent your inputs that are used to obtain answers in a decision.
    These inputs can include a variety of types, including strings, references, true/false inputs,
    and dates. Each decision input has a specified input type and can be assigned a default
    value.

Decision \[sys_decision_question\] records
:   Each decision record represents a decision that is based on your inputs. Use the condition
    builder on the decision record form to create a condition that is based on the inputs for this
    decision. Then, you can select an answer record for this decision. The answer record can be
    any record from the table that you have defined in the Decision Table record. You can select
    the same answer record for more than one decision.

Answer \[sys_decision_multi_result_element\] records
:   Answer records represent answers that are reached using different decision input values.
    Answers records can be records on any table, but you need to choose the table when creating
    your Decision Table record. You could, for example, use the sys_choice table to use existing
    choice records. From the example about insurance coverage, you could create a table where
    each record contains details about the levels of insurance coverage.
* **[Decision tables in the classic environment](https://www.servicenow.com/docs/EtO2KNYBGlqx5Zf6tqEG0w)**   
  In the classic environment, you can develop a table to use for your decision answer records. You then associate an answer record to each decision on your decision table. This answer record is returned when the decision is reached based on your inputs.

