Skip to main content
The first step in building any Gavel workflow is adding questions that capture all the information your documents need. Gavel offers a broad set of question types — from simple text fields to integration-powered lookups — so you can collect any kind of data without writing code. You add questions by clicking + Question in the bottom right of the Builder, or by selecting + New → Question in the left sidebar. Every question you add gets a unique variable name that you use to reference it in your output document templates. Choosing clear, consistent variable names from the start makes tagging your documents much easier.

Standard input questions

These are the core question types you will use in most workflows.
A single-line text box. Use this for short answers like names, addresses, or titles.When to use: Any field that requires a brief, free-text response — client name, company name, job title, street address.Variable output: A plain text string inserted directly wherever you place {{ VariableName }} in your document.
A multi-line text box. Use this when you expect a longer narrative answer that may span several sentences or paragraphs.When to use: Background facts, description of services, special instructions, or any field where the respondent may need to write multiple sentences.Variable output: A text block. The full content inserts at the variable tag in your document.
A two-option question. The respondent answers Yes or No. This is one of the most useful question types for driving conditional logic — showing or hiding later questions and document clauses based on the answer.When to use: “Does the client have children?”, “Is this agreement governed by California law?”, “Does the tenant have a pet?”Variable output: The value True (Yes) or False (No). Use this in conditional statements in your document template.
A numeric input field. Gavel supports both whole numbers and decimals. Use this for counts, dollar amounts, percentages, or any value you may need to calculate with.When to use: Purchase price, number of shares, interest rate, term in months.Variable output: A numeric value. You can use number variables in calculations within your document templates.
A date picker. Respondents select a date from a calendar interface.When to use: Effective date, signing date, deadline, date of birth, expiration date.Variable output: A formatted date value. You can control date formatting in your document template.
A text field that validates the entry as a properly formatted email address.When to use: Client email address, contact information, notification recipient.Variable output: A plain text string (the email address).

Choice questions

Use these when you want to constrain the respondent to a set of pre-defined options.
Displays a list of options as radio buttons or clickable tiles. The respondent can choose exactly one option.When to use: State of formation, entity type (LLC, Corporation, Partnership), marital status, payment method.Variable output: The text of the selected option.
Displays a list of options as checkboxes. The respondent can select all options that apply.When to use: Services included in a contract, applicable jurisdictions, rights granted in a license, list of conditions.Variable output: An object containing all selected choices. You can output selected choices as a comma-separated list, a bulleted list, or table rows. See Multi-Select responses below for syntax details.
Multi-Select answers appear in alphabetical order by default in documents. To preserve the order you defined, use the elements.items() syntax in your document template.
A hybrid input that lets the respondent either choose from a list of predefined options or type in their own answer. This is useful when your list covers most cases but you want to allow exceptions.When to use: “Select a currency or enter another”, “Choose a standard clause or write a custom one”, any field where an “Other” free-text option is needed.Variable output: Either the selected option text or the free-typed value.

Specialized input questions

An electronic signature field. Respondents sign using a mouse, trackpad, or finger on a touch screen. Works on mobile and tablet devices.When to use: Any document requiring a client or party signature directly within the workflow — consent forms, engagement letters, settlement agreements.Variable output: The signature image, which you can embed in your output document using the variable tag.
Allows the respondent to upload a single file. Accepted file types are: .pdf, .docx, .doc, .txt, .rtf, .heic, .png, .jpg/.jpeg, .tiff, .gif.When to use: Supporting documentation, prior agreements, ID verification, photos, exhibits.For full details on embedding uploaded files in output documents, see Accept file uploads in your Gavel workflow.
A looping question group that collects the same set of sub-questions for an undefined number of entries. The respondent adds as many entries as needed.When to use: Any data that could have zero to many instances — children, beneficiaries, assets, parties, shareholders, prior employers.For full details on setup and document syntax, see Repeating items: collect list data in workflows.

Informational blocks

These are not input questions — they display information or control the flow of the questionnaire without collecting a response.
Displays a block of text with a Continue button. The respondent reads the instructions and proceeds. No data is collected.When to use: Welcome messages, legal disclaimers, instructions before a complex section, explanatory context between question groups.
A decision or termination page with no input fields. Use a Kickout Page to route users to a custom message or outcome based on their prior answers — for example, notifying them that they are ineligible, directing them to contact your office, or presenting a decision without generating any documents.When to use: Ineligibility screens (“Based on your answers, you do not qualify…”), expert system endpoints, jurisdiction-specific routing.

Integration questions

Adds a payment step to your workflow powered by Stripe. The respondent must complete payment before accessing the output documents. Connect your Stripe account in your Gavel settings to enable this question type.When to use: Paid document products, pay-per-use legal tools, access-gated workflows.
Pulls data directly from a Clio contact or matter record. You can enable predictive autofill so the respondent starts typing a name and Gavel retrieves matching records from Clio. All mapped fields from the Clio record populate automatically.When to use: Workflows that draw on existing client or matter data already stored in Clio, eliminating duplicate data entry.
Lets the respondent search and select a row from an uploaded CSV spreadsheet. All data from that row becomes available as variables in your output documents. The CSV file is managed centrally in your account and can be updated at any time.When to use: Lookup tables (attorney information, fee schedules, jurisdiction-specific provisions), reference data that changes over time but follows a consistent structure.Variable syntax in documents:
{{ CSVVariableName['Column_Name'] }}
Example:
{{ AttorneyName['Address_Line_1'] }}
CSV files must be uploaded under Files → CSV files before you can add a CSV Data Source question to a workflow. CSV files are shared across all workflows in your account.

Advanced

The most powerful question type in Gavel. Invisible Logic questions do not appear to the respondent at all — they run silently in the background. Use them to create new variables, perform calculations, combine values from other questions, or set complex conditional values that you then reference in your document templates.When to use: Calculated fields (total fees, prorated amounts, derived dates), composite variables (full name from first and last name fields), complex conditional logic that needs its own variable to stay organized.Invisible Logic questions give you the flexibility to compute or transform data in ways that are not possible through standard question settings alone.

Multi-Select in documents

Multi-Select questions have several output formats you can use in Word document templates. As a bulleted list:
{% for item in variablename.true_values() %}
- {{ item }}
{% endfor %}
Count the number of selections:
{{ variablename.number() }}
Conditional on number of selections:
{% if variablename.number() > 2 %}You chose more than 2!{% endif %}
Preserve the order you defined (non-alphabetical):
{% for key, value in variablename.elements.items() if value %}{{ key }} {% endfor %}

Question settings

Every question in Gavel supports additional settings accessible through the Settings tab on the question panel:
  • Informational text (info bubble): Add explanatory text that appears as a help tooltip on the questionnaire, visible to respondents who need clarification.
  • Default value: Pre-populate a field with a value that appears before the respondent types anything. The respondent can change it.
  • Character limits: Set minimum and maximum character counts for text inputs.
  • Required / optional: Control whether the respondent must answer before proceeding.