CRM Taxonomy Insights & Best Practices

Context

Research and strategic advice for Business Answers International (BAINTL) regarding Loxo CRM status workflows. Date: 2026-01-19 Focus: Optimizing status fields for a hybrid manual/automated recruiting workflow.


2026-02-01 Decision

All automation now leverages the standard Global Status field, replacing the custom “Hierarchy 23” field for better platform alignment.

🧠 Executive Summary

The most effective CRM taxonomies in recruiting balance Data Resolution (granular tracking) with User Experience (ease of entry). For a lean team like BAINTL, a “Flat Taxonomy” (one field for everything) often fails because it mixes Process Stages (e.g., “Outreach”) with Relationship States (e.g., “Customer”).

The Solution: A Hybrid Taxonomy that uses a single field but clearly distinguishes between “Human Entry Points” and “System States”.


🏆 Industry Best Practices (Recruiting/Staffing)

1. The “4-Bucket” Standard

Most successful agencies (and platforms like Bullhorn/Crelate) organize statuses into four logical buckets. This structure ensures every contact has a clear “home”:

  1. Sourcing (The “Pool”):
    • Statuses: New, Lead, Uncontacted, Enriching.
    • Goal: Data validation and qualification.
  2. Engagement (The “Chase”):
    • Statuses: Attempted to Contact, Contacted, Responded, Nurture.
    • Goal: Establishing a dialogue.
  3. Evaluation (The “Process”):
    • Statuses: Screened, Interviewing, Submitted.
    • Note: In Loxo, this often moves to the Job Pipeline, leaving the global status as “Active Candidate”.
  4. Closing/Post (The “Relationship”):
    • Statuses: Placed, Alumni, Former Client, Do Not Contact.
    • Goal: Long-term relationship management.

2. Status vs. Pipeline (The Loxo Distinction)

A critical distinction in Loxo (and modern CRMs) is separating Global Status from Job Pipeline Stage.

  • Global Status: Defines the person’s relationship to BAINTL (e.g., “Active Client”). This is permanent until the relationship changes.
  • Job Pipeline: Defines their progress in a specific search (e.g., “Interviewing at Dow”). This is temporary.
  • Best Practice: Never use global statuses for temporary stages (e.g., don’t have a global status called “Interviewing”).

3. The “Trigger-Ready” Rule

Every status should answer the question: “What happens next?”

  • Bad Status: “Review” (Vague - who reviews? when?)
  • Good Status: “Prospect” (Implies ready for outreach) or “Enrich” (Implies missing data).

⚙️ Automating the Flow (Loxo Best Practices)

Loxo excels at triggering campaigns from pipeline stages (e.g., “Move to Interview Start Interview Prep Campaign”). However, it lacks native automation to update Global Status based on Campaign Activity (e.g., “Reply to Campaign Change Status to Responded”).

The Solution: External Webhook Architecture (n8n)

To achieve the “Big 3” simplicity, we must automate the backend status changes using Loxo’s API/Webhooks.

graph TD
    A[Loxo Campaign] -->|Event: Reply| B(n8n Webhook)
    A -->|Event: Bounce| B
    B --> C{Router}
    C -->|Reply| D[Update Loxo Status: Responded]
    C -->|Bounce| E[Update Loxo Status: Do Not Contact]
    C -->|No Reply (Sequence End)| F[Update Loxo Status: Nurture]

Implementation Guide

  1. Triggers: Use Loxo’s “Outreach” webhooks (if available) or Gmail API triggers (via n8n) to detect replies.
  2. Actions: Use Loxo API (PUT /people/{id}) to update the status_id.
  3. Safety: Always add a “Human Review” step for “Responded” contacts before auto-enrolling them in a new sequence.

🔍 Analysis of BAINTL’s Workflow

The Challenge

Aaron and Dan need to manually add contacts (high friction) but want them to enter complex automated flows (high complexity).

  • Friction Point: Deciding between “Prospect”, “Lead”, “Contact”, “Customer” during rapid data entry.
  • Risk: “Analysis Paralysis” leads to default/wrong selections, breaking automation.

We are implementing a Simplified Entry / Complex Flow model. This aligns with “Data Hygiene at Source” principles.

1. Simplified Entry (The “Human Layer”)

Only 3 statuses matter for manual entry:

  • Outreach: “I don’t know them, but I want to.” (Triggers: Enrichment Campaign)
  • Nurture: “I know them, but not right now.” (Triggers: Monthly Newsletter/MPC)
  • Active: “We are working together right now.” (Triggers: Quarterly Check-in)

2. Complex Flow (The “System Layer”)

The system handles the granularity that humans shouldn’t worry about:

  • Enrich [Auto]: “I’m fixing the data.”
  • Responded [Auto]: “They replied, look at me!”
  • Stale [Auto]: “They ghosted us, moving to Nurture.”

🚀 Future-Proofing & Scaling

When to Split Fields

As BAINTL grows, you may eventually need to split “Status” into two fields:

  1. Relationship Status: (Customer, Prospect, Partner) - Static
  2. Engagement Status: (In Sequence, Responded, DNC) - Dynamic

Current Recommendation: Stick to the single field for now to minimize click-fatigue, but use the [Auto] suffix to keep the data clean.

Data Hygiene “Health Checks”

  • Quarterly Audit: Search for contacts stuck in Prospect [Auto] for > 30 days (means automation failed or review is backed up).
  • Bounce Management: Ensure Do Not Contact is strictly enforced to protect domain reputation (mail.baintl.com).

  • “The Robot-Proof Recruiter” by Katrina Collier (Focuses on human-centric recruiting supported by tech).
  • Loxo Academy: “Best Practices for Status Workflows” (Specific to platform constraints).