Contacts

Contacts and Stages in GQ CRM: A Lightweight CRM for Your Outreach

Every recipient becomes a contact with a stage, notes, tags, and interaction history. Here's how to use stages (LEAD → CONTACTED → FOLLOWING → WON/LOST), tags, and per-contact sending to run follow-ups that follow attention.

Published August 20, 2026

GQ CRM isn't a full CRM — it's a lightweight contact layer that grows out of your sending. Every recipient you add to a task becomes a contact, and every contact carries a stage, optional notes, tags, and its full interaction history. This guide covers the model and the workflow that makes follow-ups follow attention instead of guesswork.

1. How contacts are created

Recipients you add to email tasks are automatically collected into Contacts (workspace-scoped). If a contact already exists, GQ CRM keeps the name/stage/tags you set manually and only updates the email-level data. You can also create contacts manually from the Contacts page.

To load a list up front, use Contacts → Import: paste a CSV or upload a file (.csv, .tsv, .txt, .xlsx; up to 5 MB and 5,000 rows, header row with an email column). Existing addresses follow the duplicate policy you pick — skip keeps the stages, tags and notes you edited by hand, update overwrites name, company, title, phone, website, address, source and stage from the file's non-empty values (tags are replaced when the row has them; notes are never touched) — and the summary reports created / updated / skipped / failed.

2. Stages: the sales pipeline

Each contact has one stage, defaulting to LEAD:

StageMeaning
LEADNot yet contacted
CONTACTEDFirst email sent
FOLLOWINGEngaged — following up
WONConverted — stop outreach
LOSTNot a fit — stop outreach

Stages keep your sequence state visible: you never double-send to a CONTACTED contact, and you never keep following a WON or LOST one. Move contacts through stages as conversations progress — it's the difference between a pile of emails and a pipeline.

3. Tags: workspace-wide labels

Tags are a shared pool per workspace — the same tag works across all projects in that workspace:

  • Create tags as you go (new tags join the pool automatically).
  • Filter contacts by tag on the Contacts page (e.g. apollo-sourced, warm-intro, trial-download).
  • Rename or recolor a tag and it updates everywhere at once; deleting it removes it from all contacts.

Use tags for source and intent ("where did this contact come from", "what did they engage with") — stage handles the pipeline position.

4. The contact detail page

Open a contact to see everything about them:

  • Profile — name, company, title, notes
  • Stage and tags — update as the conversation moves
  • Interaction history — every task they were in, with status, validity, opens, clicks, template, and project
  • Send — compose a new email to this contact directly (creates a single-recipient task for your review; it won't auto-send)

The recipient table in any task links email addresses straight to their contact page — the same person across tasks is one contact, not one row per campaign.

5. The follow-up workflow

This is where the contact layer earns its keep:

  1. Run your first-touch task, paced by rate limit (see the getting started guide).
  2. Watch per-recipient open/click data — contacts that engaged are visible in the task's recipient table.
  3. Open an engaged contact, set their stage to FOLLOWING, and create a follow-up task from the contact page.
  4. Follow-ups go to people who showed interest — not the whole list (see the follow-up strategy).
  5. Mark WON or LOST when the conversation resolves; both stop outreach immediately.

6. Searching and filtering

The Contacts page supports search (q) and filters by stage and tag, with per-email send statistics aggregated. Export for offline work via the contacts API (GET /api/contacts supports q/stage/tag/limit/offset).

Troubleshooting

  • Duplicate contacts? Contacts are unique per workspace + email — the same address in two tasks is one contact, and your edits to it persist across tasks.
  • A contact keeps getting email after LOST — move the stage to LOST (or WON) and stop creating follow-up tasks for them; stages don't auto-opt-out, they guide your workflow.
  • Tags not shared across projects — tags are per-workspace; switch workspaces with the Workspace Switcher to see that workspace's pool.
  • Contact missing interaction history — history is per email across tasks; if the contact page looks empty, the sends may belong to a different workspace.

Contacts turn raw sending into a pipeline: every recipient has a stage, every engagement is recorded, and follow-ups follow attention. It's the lightest CRM that actually tracks what your emails did.