---
title: CAI SQL & Opportunity Automation Logic
type: article
created: '2026-04-05'
updated: '2026-04-05'
source_docs:
- raw/2026-02-26-cai-hubspot-status-call-125614379.md
tags:
- hubspot
- automation
- sql
- mql
- opportunity
- bant
- sales-qualification
- citrus-america
- workflows
layer: 2
client_source: null
industry_context: null
transferable: true
---

# CAI SQL & Opportunity Automation Logic

## Overview

This article documents the qualification workflow design agreed upon during the [[clients/citrus-america/_index|Citrus America]] HubSpot working session. It covers the two-stage automation pipeline: MQL → SQL → Opportunity → Deal, including the trigger logic for each transition and a critical blocker that was surfaced during the call.

The design intent is to automate lead progression as much as possible, reducing manual enrollment and ensuring contacts move through the pipeline as soon as qualifying data is entered.

---

## Lifecycle Stage Flow

```
Prospect → Lead → MQL → SQL → Opportunity → Customer
```

- **MQL:** Contact has basic qualifying data (email, phone, etc.) and is receiving nurture/education campaigns.
- **SQL:** Contact has answered at least one of the ~10 sales qualification questions.
- **Opportunity:** Contact meets a defined BANT threshold; a deal is automatically created.
- **Customer:** Closed/won.

The `Lifecycle Stage` field (HubSpot native) is the authoritative field for tracking this progression. The legacy `Ranking` and `Contact Stage` custom fields are being deprecated in favor of this field. See [[knowledge/hubspot/cai-contact-field-structure|CAI Contact Field Structure]].

---

## SQL Automation

### Trigger Logic

A contact becomes an **SQL** when they have answered **any one** of the ~10 sales qualification questions on the contact record.

- **Logic type:** OR (not AND)
- **Rationale:** The lower bar is intentional — the goal is to move contacts to SQL faster, as soon as any meaningful qualification signal exists.

### Qualification Questions (examples)

- "What types of applications do you think you'll be using for the juicer?"
- Additional questions defined in Miriam's lead qualification spreadsheet (to be shared with Karly)

### ⚠️ Critical Blocker

**The SQL workflow is currently non-functional.** The qualification questions are not present on the contact record layout, so reps have no way to enter the data that would trigger the automation.

**Resolution:** Karly to investigate creating a custom internal form or modifying the contact layout to surface these questions in a clear, easy-to-use interface. The form should:
- Live on the contact record (not company)
- Include all ~10 SQL qualification questions as dropdowns or selectable fields
- Be simple enough for any rep to complete during or after a sales conversation

---

## Opportunity Automation

### Trigger Logic

A contact becomes an **Opportunity** when they meet a defined BANT threshold. Two threshold approaches are under consideration:

| Approach | Description |
|---|---|
| **Minimums** | Every BANT field must score at or above a minimum value (e.g., all fields ≥ 2 or ≥ 3) |
| **Average / Sum** | The sum of all BANT scores must exceed a defined total, allowing one weak field to be offset by strong scores elsewhere |

**Decision pending:** Miriam to consult with Brian on which threshold model best fits the sales process. The "average" approach is more flexible (e.g., a contact with no confirmed budget could still qualify if authority, need, and timeline are strong).

### BANT Fields

The four scored fields on the contact record:

- **Budget** — Does the contact have budget allocated?
- **Authority** — Is this person the decision-maker?
- **Need** — Is there a confirmed need for the product?
- **Timeline** — When are they looking to purchase?

Each field uses a numeric scale (0–4 or 0–5; exact scale defined in the lead qualification spreadsheet).

### Auto-Deal Creation

When a contact's Lifecycle Stage transitions to **Opportunity**, a separate workflow automatically creates an associated Deal record. This ensures every opportunity has a deal in the pipeline without requiring manual deal creation.

---

## Workflow Implementation Notes

- The existing BANT → Opportunity workflow draft needs to be updated to use the correct threshold logic (minimums vs. average) once Miriam/Brian confirm the approach.
- The current workflow was set to **manual enrollment** — this should be replaced with automatic enrollment triggered by the BANT field conditions.
- Once the Opportunity → Deal auto-creation workflow is built, the two workflows (BANT → Opportunity and Opportunity → Deal) should be treated as a linked pair.
- Karly to review the Miro board and lead qualification spreadsheet to ensure HubSpot workflow logic matches exactly.

---

## Action Items

| Owner | Action |
|---|---|
| Karly Oykhman | Update SQL workflow to use OR logic across ~10 qualification questions |
| Karly Oykhman | Update Opportunity workflow to use correct BANT threshold (pending Miriam/Brian decision) |
| Karly Oykhman | Build Opportunity → Deal auto-creation workflow |
| Karly Oykhman | Design and propose internal lead qualification form on the contact record |
| Miriam Framson | Consult Brian on BANT threshold approach (minimums vs. average) |
| Miriam Framson | Send ranking-to-stage mapping and lead qualification spreadsheet to Karly |

---

## Related

- [[clients/citrus-america/_index|Citrus America Client Overview]]
- [[knowledge/hubspot/cai-contact-field-structure|CAI Contact Field Structure]]
- [[meetings/2026-02-26-cai-hubspot-status-call|Meeting: CAI HubSpot Status Call — Data Structure & Qualification Workflow]]