Your CRM data structure determines whether your system becomes a trusted source of truth or a messy spreadsheet nobody wants to use. This guide shows you how to design properties that stay clean and useful as your team grows.

Why Most CRM Data Structures Fail

Most teams approach CRM properties the same way they approach spreadsheet columns: they add a new field every time someone has a question. Six months later, you have 200 contact properties, half of them empty, and nobody can agree on what "Status" means.

The problem isn't the CRM—it's treating it like a database where you can just add columns. Your CRM is a living system that people use under time pressure. If your data structure doesn't match how your team actually works, it won't get maintained.

Core Principles

1. Every Property Needs a Clear Owner

Before you create a property, ask: who is responsible for keeping this updated? If the answer is "everyone" or "it'll auto-populate," you're creating a future data quality problem.

Good Owner Assignment:
  • Lead Source: Marketing owns (set via form or campaign)
  • Deal Stage: Sales owns (updated as deal progresses)
  • Industry: SDR owns (enriched during qualification)
  • Contract Value: Sales owns (entered at close)

2. Properties Should Match Your Process, Not Theory

Don't create properties based on what you might want to track someday. Create them based on decisions your team makes today. If you're not using a field to route, report, or trigger something, you probably don't need it.

Common Mistake: Creating 15 qualification fields because you read about BANT or MEDDIC. If your sales team doesn't actually qualify using those frameworks, the fields stay empty.

3. Use Dropdown Options, Not Free Text (Unless Absolutely Necessary)

Free text fields are where data quality goes to die. "Enterprise," "enterprise," "Enterprise customer," and "ent" all mean the same thing to a human, but they're four different values in your reports.

Field Type When to Use When to Avoid
Dropdown Categories, statuses, anything with 2-15 standard options When options change frequently or need custom values
Text Names, unique identifiers, notes Anything you need to segment or report on
Number Revenue, employee count, scores Things that need text labels (like priority levels)
Date Events, renewals, milestones Approximate timeframes ("Q2 2026")
Checkbox Yes/no binary states When you need more than two options

4. Property Names Should Be Self-Explanatory

Your team shouldn't need to guess what a field means. "Type" is ambiguous. "Company Type" is clear. "Lead Status" could mean anything. "Lead Qualification Status" is specific.

Bad → Good Property Names:
  • "Status" → "Deal Stage" or "Lead Status"
  • "Type" → "Company Type" or "Deal Type"
  • "Value" → "Annual Contract Value (ACV)"
  • "Rating" → "ICP Fit Score"
  • "Date" → "Expected Close Date"

Property Structure by Object

Contact Properties

Contacts are people. Focus on information that helps your team have better conversations and route leads appropriately.

Essential Properties (Everyone Needs These):

  • First Name, Last Name, Email - Obviously
  • Company Name - Link to company object when possible
  • Job Title - Text field (too many variations for dropdown)
  • Lead Status - New → Contacted → Qualified → Unqualified
  • Lifecycle Stage - Subscriber → Lead → MQL → SQL → Customer
  • Lead Source - How they found you (dropdown)
  • Contact Owner - Who's responsible for this person

Common Optional Properties:

  • Department: For targeting specific roles (dropdown: Sales, Marketing, IT, Finance, Operations, Other)
  • Seniority Level: IC → Manager → Director → VP → C-Level (useful for routing)
  • Phone Number: Only if your team actually calls people
  • LinkedIn URL: For research and context
  • Timezone: For scheduling (auto-populate from IP if possible)
Best Practice: Keep custom contact properties under 25. If you need more, you're probably tracking company-level data at the contact level.

Company Properties

Companies are accounts. This is where firmographic data lives—information about the organization itself, not individuals.

Essential Properties:

  • Company Name - Primary identifier
  • Domain - For enrichment and deduplication
  • Industry - Dropdown (use standard classifications like SIC or NAICS, or create your own simple list)
  • Company Size (Employees) - Number or range (1-10, 11-50, 51-200, etc.)
  • Annual Revenue - If you sell to specific revenue bands
  • ICP Fit Score - Dropdown: Ideal, Good Fit, Poor Fit, Disqualified
  • Company Owner - Account owner (usually the AE)

Common Optional Properties:

  • Company Type: Prospect, Customer, Partner, Competitor
  • Target Account: Checkbox for ABM programs
  • Technologies Used: Multi-select if you sell based on tech stack
  • Region/Territory: For routing and quota tracking
  • Parent Company: For enterprise accounts with subsidiaries

Deal Properties

Deals are opportunities. Track what you need to forecast accurately and close deals, nothing more.

Essential Properties:

  • Deal Name - Company Name + Product/Service
  • Deal Stage - Your pipeline stages (see separate guide)
  • Amount - Total contract value or annual value
  • Close Date - Expected close date (required for forecasting)
  • Deal Owner - AE responsible for closing
  • Deal Type - New Business, Renewal, Expansion, Churn

Common Optional Properties:

  • Contract Term: Annual, Multi-year, Monthly
  • Next Step: Text field for what needs to happen next
  • Competitors: Who you're up against (multi-select)
  • Win/Loss Reason: Required when deal closes (dropdown)
  • Decision Maker: Link to contact who signs the contract
  • Probability: Auto-calculated by stage or manual override

Property Naming Conventions

Consistency matters. Pick a convention and stick to it across your entire CRM.

Recommended Convention:

  • Prefix custom properties with category: "Sales_Qualification_Score" instead of "Qualification Score"
  • Use underscores or spaces, not camelCase: "Lead_Source" or "Lead Source," not "leadSource"
  • Spell out abbreviations: "Customer Acquisition Cost" not "CAC" (unless everyone on your team knows the acronym)
  • Include units in the name: "Contract_Value_USD" or "Employee_Count"
  • Date fields should say what they represent: "Contract_Start_Date" not just "Start_Date"

Property Maintenance Rules

When to Add a New Property

Only add a property if it meets at least 2 of these criteria:

  1. It affects routing or assignment (e.g., company size determines which AE gets the lead)
  2. It's required for reporting (e.g., tracking deal source for marketing attribution)
  3. It triggers automation (e.g., lifecycle stage triggers email sequences)
  4. It's needed for segmentation (e.g., industry for targeted campaigns)
Red Flag: If someone says "we might want to track this someday," that's not a reason to create a property. Wait until the need is concrete.

When to Archive a Property

Review your properties quarterly. Archive (don't delete) any field where:

  • Less than 20% of records have a value
  • Nobody has updated it in 6+ months
  • The original owner left and nobody knows what it's for
  • The process it supported no longer exists

Common Data Structure Mistakes

Mistake #1: Creating Properties for Every Report Request

Problem: Marketing asks for "Campaign Name" to be tracked at the deal level. You create a property. Next week, they want "Content Type." Then "First Touch Asset." Soon you have 15 properties that only marketing cares about.

Solution: Use your CRM's built-in associations or create a single "Attribution" object that connects deals to campaigns, content, etc. Don't bloat your core objects.

Mistake #2: Too Many Qualification Fields

Problem: You implement BANT (Budget, Authority, Need, Timeline) as four separate properties. Sales fills them out inconsistently because it feels like homework.

Solution: Create a single "Qualification Status" property (Not Qualified, Partially Qualified, Fully Qualified). Use notes or a separate qualification object for details.

Mistake #3: Using Free Text When You Need Dropdowns

Problem: "Industry" is a text field. You have 47 different variations of "Software" in your database.

Solution: Convert to dropdown with 8-12 standardized industry categories. Let people add "Other" with a text field if needed.

Mistake #4: Property Names That Need Documentation

Problem: Nobody knows the difference between "Status," "Lead Status," and "Lifecycle Stage" without reading a wiki page that doesn't exist anymore.

Solution: Use descriptive names and add help text. "Deal Stage" is clear. "Stage" is ambiguous.

Property Field Types: Decision Guide

Data Type Best Field Type Example
Categories (2-15 options) Dropdown (single-select) Lead Status, Company Size, Industry
Categories (pick multiple) Multi-select Product Interests, Pain Points
Yes/No questions Checkbox Email Opt-In, Target Account
Whole numbers Number Employee Count, Deal Amount
Decimals Number (decimal) Contract Value, Close Probability
Specific dates Date picker Close Date, Contract Start
Time-sensitive events Date-time picker Demo Scheduled, Last Contact
Unique identifiers Text (single-line) Company ID, Sales Order Number
Long descriptions Text (multi-line) Notes, Deal Summary
Links to other records Association/Lookup Contact to Company, Deal to Contact

Implementation Checklist

  • Audit existing properties—archive anything unused in 90+ days
  • Create property naming conventions document
  • Assign owners to each critical property
  • Convert high-value text fields to dropdowns with standardized options
  • Add help text to confusing or complex properties
  • Document required vs optional fields for each team
  • Set up quarterly property review meeting
  • Train team on what each property means and when to use it
Next Step: Once your data structure is clean, tackle your deal pipeline. A good pipeline uses these properties to move deals forward without manual intervention. Read our Deal Pipeline Design Guide.