---
title: "Conditional Logic and Lead Scoring"
description: "Route visitors with IF/THEN rules, assign points to answers, and send each lead to the right ending by score."
url: https://help.roasform.com/en/articles/31-conditional-logic-and-lead-scoring
collection: "Form Builder"
updated: 2026-11-10
language: en
---

# Conditional Logic and Lead Scoring

Route visitors with IF/THEN rules, assign points to answers, and send each lead to the right ending by score.

ROASForm gives you two ways to make a form react to answers. **Conditional Logic** jumps a visitor to a specific question or ending based on what they just answered. **Lead Scoring** adds up points across all their answers and picks an ending by score range. Most qualification funnels use both: logic for hard disqualifiers, scoring for everything else. Both live in the tabs at the top of the builder.

## Conditional Logic

Open the **Logic** tab. Every question is listed; click **Add logic** on the one whose answer should decide where the visitor goes next. A rule has two halves:

-   **IF:** a question, an operator, and a value, for example "2. What type of business do you run?" is "Something else". Click **Add condition** to combine several, and choose whether all of them must be true or any one is enough.
    
-   **THEN:** where to jump. The list shows every later question and, at the bottom, your endings (the default one is marked "Default ending").
    

![](https://staticfiles.gleap.io/ghelparticle/5JFi3QG7gziMTFriANRpIyjahVg8Kk9mFCllvVGNYbSYHlXvDSdgJK5QdkeCSPDzJE76aCpUShJ.png)

Click **Add rule** for more rules on the same question; they are checked top to bottom and the first match wins. **All other cases go to** sets what happens when no rule matches: the next question by default, or any question or ending you pick. **Delete logic** removes all rules from a question.

### Operators by question type

-   **Choice questions, Opinion Scale, and Rating:** is, is not, is any of, is none of (the last two take several options at once).
    
-   **Number:** equals, is greater than, is less than.
    
-   **Text questions:** is equal to, is not equal to, contains, does not contain, begins with, ends with.
    
-   **Email:** contains, does not contain, **is personal email** (Gmail, Yahoo, and similar), and **is business email**, handy for routing consumer addresses away from a B2B calendar.
    
-   **Phone Number:** contains, begins with, country code is.
    

Leaving the value empty on **contains**, **begins with**, **ends with**, or **is not equal to** makes the condition match any answer. The same goes for scoring rules.

![](https://staticfiles.gleap.io/ghelparticle/BaUKEnxPZQxpkCoSf9huNiAtwKZmKi6Q5YNaZdfL2rs1PslC2Yw6mAYhUe58q2S0vsG5QRb0WBV.png)

### Why is a target greyed out?

A question or ending appears disabled in the THEN list when jumping there would skip a question a calendar ending needs (the email or phone a GoHighLevel calendar books with, or the name and email a Calendly calendar needs), or when the ending itself has a configuration issue (for example a Calendar ending without a calendar). On SmartSkin and the vertical Calendar Skin, question targets are always disabled. Other required questions can be skipped. Hover the item for the exact reason. To unlock it, move that contact question earlier or fix the ending.

![](https://staticfiles.gleap.io/ghelparticle/mDfhAdpuwapQVvuHFX74d0lXm830QfVVKxhNxMku4JyIqppvqYzi1q807WhxOiHYZrz6fY7IHYI.png)

## Lead Scoring

Open the **Scoring** tab. Here you assign points to answers; the visitor's points add up as they go, and their total decides both the ending they see and the lead score you can filter on and send to your CRM.

-   **Choice questions:** type a score next to each option (leave 0 for neutral answers).
    
-   **Number questions:** click **Add Scoring Rule** and set an operator, a value, and the points, for example "is greater than 25000" scores 15. Add several rules for tiers.
    
-   **Max Score** at the top is calculated for you: the highest total a visitor can reach. Use it to sanity-check your ranges.
    

![](https://staticfiles.gleap.io/ghelparticle/8VxVFG1grYv4oy0esybp9CL4ejCgX7mb4ZSffrdzGEBXPisRe3GMshoIr1qCIunw7DpppELOwbU.png)

### Routing by score

Each ending can carry a **Score Range**. In the Endings list, click the range badge (or the pencil) on an ending and set MIN and MAX; leave MAX empty for "no upper limit", shown as ∞ (typing 0 makes 0 the upper limit). A typical setup: Calendar ending 60 to ∞, thank-you ending 0 to 24, and the default ending with no range for everyone in between.

![](https://staticfiles.gleap.io/ghelparticle/e22UXUxyrXUKZOJiHLtKAVuG2MXsXRarkQdBwW1OWOKuscgpAkIbyth1SnCTboqVOgWIGApb19p.png)

### Sending the score to your CRM

Click the gear next to Max Score to open **Scoring Settings**. Once the form has a CRM selected in Form Settings, you can turn on passing the score to a custom field there; see [Mapping Form Answers to GoHighLevel Custom Fields](https://help.roasform.com/en/articles/22-mapping-form-answers-to-gohighlevel-custom-fields.md).

![](https://staticfiles.gleap.io/ghelparticle/YrMMcqjHsM5Rxk3yxIK0Mc9ni39cn51dUCTbyAoXZ5OkyTdLBSNATvIp7wYW0vgHHCWXFG5vgwo.png)

## Which ending does a lead see?

ROASForm picks the ending in this order. The first step that applies wins.

1.  **A logic rule that goes to an ending.** Rules run as the visitor answers (with Show First X Fields or Show All Fields, ending rules are checked when the visitor submits), top to bottom on each question, and the first match wins. **All other cases go to** counts as a rule too: if it points at an ending, everyone who reaches that question without matching a rule above it goes there. When logic picks the ending, score ranges are not checked. The score is still calculated and saved with the lead.
    
2.  **The score.** If no logic rule sent the visitor to an ending, their total is checked against each ending's Score Range, in the order the endings are listed. The first range that contains the total wins, so keep ranges from overlapping.
    
3.  **The default ending.** No matching rule and no matching range means the ending marked Default. See [Endings Explained](https://help.roasform.com/en/articles/29-endings-explained-thank-you-redirect-and-calendar.md).
    

To let the score alone decide, don't point any logic rule, or All other cases, at an ending.

### Logic on each skin

-   **TypeSkin, Chat Bot Skin, Spektra Skin, and Calendar Skin with Horizontal Flow:** every rule runs, both jumps to a question and jumps to an ending.
    
-   **SmartSkin, and Calendar Skin with Vertical Flow:** only rules that go to an ending run, in every Field Reveal mode. Answered questions stay on screen, so there is nowhere to jump to, and question targets are greyed out in the THEN list.
    
-   **Field Reveal set to Show First X Fields or Show All Fields:** several questions share one Continue button, so every question's ending rules are checked together when the visitor submits, in form order, and the first match wins. If none matches, score ranges and the default ending decide.
    

## Tips

-   Use logic for instant disqualifiers (wrong country, no budget) and scoring for the nuanced stuff; it keeps the rules short.
    
-   Put scored questions before contact fields so the visitor's total is complete when the ending is chosen.
    
-   Test with the preview: walk through each path and confirm you land on the ending you expect. The Drop-off report later shows where real visitors leave.
