# Leads

> Unqualified to qualifying records — work the lead lifecycle with status, lifecycle stage, scoring, and bulk actions.

Source: https://docs.graph8.com/deals/leads/

The Leads view is where unqualified-to-qualifying records live before they convert into deals. It surfaces every contact and company moving through the early lifecycle stages — Subscriber, Lead, MQL, SQL — with status, score, source, and owner all in one grid.

## Opening the Leads View

1. Click **Revenue** in the top nav
2. Click **Leads**
3. The full-width AG Grid loads with every lead in your org

The grid uses server-side pagination, so it scales to millions of records without slowing the browser.

## Lead Statuses

A lead's **status** captures where it is in the qualification process — independent of its lifecycle stage:

| Status | When to Use |
|--------|-------------|
| **New** | Just arrived, not yet reviewed |
| **Open** | Reviewed and assigned, ready to work |
| **In Progress** | Currently being worked by a rep |
| **Contacted** | Initial outreach attempted |
| **Qualified** | Met qualification criteria — ready to convert |
| **Unqualified** | Doesn't meet criteria — disqualified |

Status changes are tracked in the lead's activity timeline.

## Lifecycle Stages

The **lifecycle stage** is the broader marketing-to-sales journey — separate from status but evolving alongside it:

| Lifecycle Stage | Definition |
|-----------------|------------|
| **Subscriber** | Opted into communications (newsletter, content) but no deeper qualification |
| **Lead** | Demonstrated interest beyond subscription (form fill, demo request) |
| **MQL** | Marketing-qualified — meets ICP criteria and engagement thresholds |
| **SQL** | Sales-qualified — confirmed fit and intent through sales conversation |
| **Opportunity** | Active deal in pipeline (appears in Deals view too) |
| **Customer** | Closed-won (appears in Customers view too) |
| **Evangelist** | Customer who refers, advocates, or amplifies |

A single record progresses through both axes — status tracks short-term work, lifecycle tracks long-term journey. A "Contacted" status with "Lead" lifecycle is normal; an "Unqualified" status with "MQL" lifecycle means the lifecycle should likely be pushed back.

## Grid Columns

The leads grid shows these fields by default:

| Column | What It Shows |
|--------|---------------|
| **Name** | Contact full name (link to contact detail) |
| **Status** | One of the 6 lead statuses above |
| **Pipeline** | Which pipeline this lead belongs to (if multi-pipeline org) |
| **Pipeline Stage** | Current stage within the pipeline |
| **Lifecycle Stage** | Subscriber → Evangelist scale |
| **Score** | Lead score (intent + fit + engagement) |
| **Source** | How the lead arrived (form, intent signal, sequence reply, etc.) |
| **Qualified By** | Last signal type that triggered qualification |
| **Type** | Lead type classification |
| **Converted** | Whether the lead has been converted to a deal |
| **Converted Date** | When conversion happened |
| **Owner** | Assigned rep |
| **CRM Source** | If imported from a CRM, which one |
| **Email** | Contact email |

Use the **Columns** panel on the right edge of the grid to add, remove, or reorder columns.

## Bulk Actions

Select one or more rows to enable bulk action buttons in the toolbar:

| Action | What It Does |
|--------|--------------|
| **Status** | Change status for all selected leads |
| **Lifecycle** | Change lifecycle stage for all selected leads |
| **Owner** | Reassign all selected leads to a specific user |
| **Generate Content** | Run AI content generation across the selection (uses your global context) |
| **Batch Generate** | Generate content for many leads in one batched job |
| **Delete** | Remove selected leads from the org (cannot be undone) |

Bulk actions update the grid in place — no page refresh needed.

## Lead Sources

Every lead has a `lead_source` field indicating how it arrived:

| Source | How It Arrived |
|--------|----------------|
| **Form submissions** | Filled out a website form (tracked via the graph8 snippet) |
| **Intent signals** | Researching your keywords or visiting your site |
| **Sequence replies** | Positive replies from outbound sequences |
| **Manual** | Added by a rep directly from a contact record |
| **Find People** | Discovered via the Find People tool with ICP filters |
| **CRM sync** | Imported from HubSpot, Salesforce, Pipedrive, or Zoho |
| **API / webhook** | Pushed in via the public API or a custom integration |

## Lead Scoring

Leads are scored automatically. The score combines four factors:

| Factor | What It Measures |
|--------|------------------|
| **Engagement signals** | Website visits, email opens, link clicks |
| **Intent data** | Keyword research activity, competitor comparisons |
| **Profile fit** | How well the contact matches your ICP |
| **Recency** | Newer signals score higher than stale ones |

Configure scoring rules in **Settings → Lead Qualification** — toggle which event types trigger qualification, define page patterns that count as high-intent, and set thresholds.

> **Tip:**
> Set up lead scoring early. Without scores, your team reviews every lead equally. With scores, they focus on the hottest opportunities first — the ones most likely to convert.

## Converting a Lead

When a lead is ready to become an active deal:

1. Click the lead's name to open its detail view
2. Click **Convert to Deal**
3. graph8 creates a deal in **Prospects** linked to this contact + company
4. The lead's `is_converted` flag flips to true and `converted_date` is recorded
5. The lifecycle stage advances to **Opportunity**

Converted leads stay visible in the Leads grid (filtered by `converted=true`) for historical tracking.

## Generate Content

The **Generate Content** action runs AI content generation across selected leads. It uses your global context (brand brief, value props, personas) to draft personalized messages for each contact:

- **Single lead** — open the lead, click **Generate Content**, pick a content type (email, LinkedIn message, call script)
- **Bulk** — select multiple leads, click **Batch Generate**, configure the job and let it run in the background

Each generation costs credits per lead. Track progress and review results in the **Activity** tab.

## CSV Export

Click the **Download** icon in the grid toolbar to export the current view as CSV. The export respects your active filters — so if you've filtered to "MQL + Status = Qualified", only those rows export.

## Lead Qualification Settings

Lead qualification rules are configured at **Settings → Lead Qualification**:

- Toggle which signal events count toward qualification (email replies, calls, LinkedIn responses, form fills, web visits, meetings)
- Define **page patterns** — URL patterns that score as high-intent (e.g., pricing pages, demo pages)
- Trigger a **backfill** to re-evaluate historical signals against current rules

See [Settings → Lead Qualification →](https://docs.graph8.com/settings/roles/) for the full qualification configuration.

## Related

- [Deals Overview →](https://docs.graph8.com/deals/overview/) — How leads flow into the broader pipeline
- [Prospects →](https://docs.graph8.com/deals/prospects/) — Where converted leads live as active deals
- [AE Cockpit →](https://docs.graph8.com/deals/ae-cockpit/) — AI surfaces hot leads as decision cards
- [Signals →](https://docs.graph8.com/signals/overview/) — Where intent signals come from
- [Enrichment →](https://docs.graph8.com/ai-features/enrichment/) — Fill in missing lead data before outreach
