Migration Playbook

Capsule Lightfield

Capsule to Lightfield: The Complete Migration Playbook

A 35-step runbook across six phases — track your progress, and open the right tool at every step.

0 / 35 steps complete 0%
TL;DR

Capsule to Lightfield migration requires splitting Party objects into Accounts and Contacts, translating milestones to stages, and handling entry history via API — CSV works for simple moves, API-to-API for full fidelity.

Migrating from Capsule CRM to Lightfield is a data-model translation problem with no native one-click migration path available. Capsule organizes its data around a unified Party entity (covering both people and organizations) with linked Entry objects for activity history, while Lightfield separates records into distinct Accounts, Contacts, and Opportunities with an AI-indexed unstructured context layer. The fundamental architectural gap means that Capsule's polymorphic Party records must be split and re-linked, pipeline stage definitions must be pre-created in Lightfield, and historical activity entries cannot be bulk-imported as native email objects. A viable migration requires either a CSV export combined with Lightfield's agentic import, a custom API-to-API pipeline using Capsule REST API v2 and Lightfield's REST API, or a hybrid of both approaches.

Read this first

Pair-specific gotchas that catch teams out. Each one has cost somebody a weekend.

Capsule's full account export (Account Settings → Export Data) generates a ZIP with three

Capsule's full account export (Account Settings → Export Data) generates a ZIP with three CSV files: Contacts, Opportunities, and Projects. File attachments are excluded entirely — they must be downloaded individually via the API. The export link expires after 12 hours. Opening the CSV in Excel can truncate long note-history fields at 32,000 characters, silently destroying old deal context.

If Capsule Projects are part of your delivery, billing, or client onboarding workflow,

If Capsule Projects are part of your delivery, billing, or client onboarding workflow, this is a process redesign, not a data copy. Do not schedule a migration cutover until you've mapped the business function, not just the data object.

Don't replicate your Capsule schema verbatim

Fields that required manual entry in Capsule can be AI-maintained in Lightfield. Use the migration as an opportunity to simplify rather than recreate every stale field.

Lightfield can auto-create accounts and contacts from connected email and calendar activity

Decide before onboarding whether auto-creation should stay off, stay selective, or be allowed only after the baseline import is validated. Enabling it prematurely creates duplicate risk against your freshly loaded records.

The runbook

Work top to bottom. Tick steps as you go — your progress is saved in this browser.

01 Discovery Agree scope, pipeline design and success criteria before touching data. 0/5

Objective A scope covering every object in the revenue model, with sales leadership signed up to the pipeline design.

  1. Inventory every object in Capsule

    RevOps 1-2 days

    Count accounts, contacts, leads, deals or opportunities, activities, notes, emails, files, products and quotes. Activity and email history is usually the largest object by an order of magnitude and the one people forget to size.

    Data Profiler Get real record counts instead of estimating from memory
  2. Map the current pipeline and agree the target model

    Sales leadership 3-5 days

    Document every pipeline, stage, probability and required field, then agree the Lightfield model with sales leadership. Migrating a broken pipeline faithfully is a wasted opportunity; redesigning it mid-migration is a wasted migration.

    Stage changes alter historical conversion rates. Agree how you will restate reporting before you change the model.

  3. Catalogue integrations and automation

    RevOps 2-3 days

    List every system touching Capsule: marketing automation, quoting, billing, ERP, data enrichment, dialler, BI. Each is a separate cutover task with its own owner, and each can silently write bad data into your new CRM.

  4. Capture the reporting that must survive

    RevOps 2 days

    Interview the people who actually live in the dashboards — forecast, pipeline coverage, rep activity, cohort conversion. Every one of these needs the underlying fields to migrate, which frequently expands the scope.

  5. Build the business case and pick the go-live date

    Project sponsor 2 days

    Model licence delta, implementation effort and productivity dip. Then choose the date deliberately: mid-quarter is disruptive, quarter-end is worse. Most teams land on the first week of a new quarter.

    COI & ROI Calculator Build the 36-month business case you will need for sign-off

Capsule → Lightfield specifics

Data hygiene fatigue
Capsule requires manual logging of notes, calls, and emails. Lightfield auto-captures interactions and keeps fields current without human input.
Unstructured context over structured fields
For founder-led sales and relationship-driven GTM, the full text of conversations is often more valuable than dropdown selections. Lightfield stores complete conversation history and makes it queryable by the AI layer.
Consolidation
Teams running Capsule alongside a separate call recorder, email sequencer, and enrichment tool can reduce tool count by moving to Lightfield's unified platform.
AI-assisted workflows
Lightfield's agent layer can draft follow-ups, suggest pipeline changes from buying signals, and auto-enrich records — capabilities Capsule doesn't offer natively.

Don't move on until

  • Object counts confirmed for accounts, contacts, deals and activities
  • Target pipeline and stage model agreed with sales leadership
  • Reporting requirements captured from the people who use the reports
02 Data Audit CRM data is usually dirtier than anyone expects. Find out how dirty. 0/6

Objective A profiled export with duplicates, ownership gaps and relationship integrity all quantified and triaged.

  1. Export and profile every object

    Data engineer 2 days

    Profile null rates, distinct values and type consistency across all objects. Pay attention to fields sales reps were supposed to fill in: an 80% null rate on a field your forecast depends on is a business finding, not a data one.

    Data Profiler Profile the Capsule export for nulls, outliers and type drift
  2. Quantify duplicates and agree the merge policy

    RevOps 2-4 days

    Measure duplicate accounts (same company, different spellings and suffixes) and contacts (same email, or same person at a renamed company). Agree survivorship rules before merging: which record wins, which fields, and what happens to the activity history on the loser.

    Merging before you have agreed survivorship rules destroys history irreversibly. Decide first, merge second.

    Data Cleaner Strip empty rows, stray whitespace and dead columns
  3. Verify relationship integrity

    Data engineer 1-2 days

    Check every deal has a valid account, every contact a valid account, every activity a valid parent. Referential breaks are the defect that turns a clean-looking load into a CRM where the pipeline report does not tie to the account list.

  4. Resolve ownership and the user map

    RevOps 1-2 days

    Build the Capsule user → Lightfield user map, including leavers. Every record needs a valid owner: records assigned to deactivated users either fail to load or land unassigned, and unassigned pipeline is pipeline nobody works.

    Records owned by deactivated users are a top cause of load failures. Decide the reassignment target before you start.

  5. Scan for PII and regional compliance

    Compliance / DPO 1-2 days

    CRMs hold marketing consent, lawful basis and unsubscribe state. Confirm these fields migrate intact and that consent provenance survives — losing consent records is a regulatory problem, not a data-quality one.

    PII & Compliance Scanner Find regulated fields before they land in a new system
  6. Clean, normalise and archive the pre-state

    Data engineer 2 days

    Normalise country and state values, phone formats, currencies and casing, and standardise all timestamps to UTC. Keep an untouched copy of the raw export — it is your only reference if a mapping decision turns out wrong.

Capsule → Lightfield specifics

Entries are separate objects
Notes, emails, and activity logs are not embedded in parties or opportunities — they're linked via entity IDs and must be fetched per-record or by date range. The entries list endpoint maxes out at 50 items per page, tighter than the 100-per-page limit on other endpoints (developer.capsulecrm.com).
Max 100 items per page
for most endpoints; entries max at 50 per page

Don't move on until

  • Duplicate rate quantified per object with a merge policy agreed
  • Every record has a valid owner mapped to a target user
  • Relationship integrity verified — no orphaned deals or contacts
03 Field Mapping Map objects, relationships and picklists — in that order. 0/6

Objective A signed mapping spec that covers objects, relationships, picklist values and currency handling.

  1. Map objects and their relationships first

    Solution architect 2-3 days

    Establish how Capsule objects correspond to Lightfield objects before any field work. Leads-versus-contacts, accounts-versus-organisations and deal hierarchies differ structurally between CRMs, and a field map built on the wrong object model has to be redone.

    Schema Mapper Opens pre-loaded with the Capsule → Lightfield field pair
  2. Generate and then hand-review the field map

    Solution architect 2-3 days

    Auto-match both schemas, then review every row. Look hardest at anything named "type", "source", "stage" or "status", where names match and meanings do not.

  3. Map every picklist value, including retired ones

    RevOps 2 days

    Enumerate all values on both sides — deal stages, lead sources, industries, statuses — and map each explicitly, including values no longer offered but still present on old records. Unmapped values either fail the row or land as blanks that quietly break segmentation.

    Historical records often carry picklist values that were retired years ago and no longer appear in the UI.

  4. Decide currency, amount and date handling

    Finance / RevOps 1-2 days

    If you sell in multiple currencies, confirm how Lightfield stores amounts, exchange rates and dated conversion rates. Recalculating historical deal values at today's rate silently rewrites your revenue history.

    Multi-currency deals re-converted at current rates will not tie to your historical reporting or your finance system.

  5. Determine the load order

    Data engineer 1 day

    Sequence the load so parents exist before children: users, then accounts, then contacts, then deals, then activities and notes. Keep source IDs in custom fields so relationships can be rebuilt by lookup rather than guesswork.

  6. Freeze the spec and sign off

    Project manager 1 day

    Version-control the mapping, walk RevOps and sales leadership through the decisions that change reporting, and get written sign-off before the pilot.

Capsule → Lightfield specifics

Tags and custom fields require the embed parameter
A standard GET /api/v2/parties call does not include tags or custom field values. You must explicitly request ?embed=tags,fields to get them.

Don't move on until

  • Object and relationship model mapped and reviewed
  • Every picklist value explicitly mapped, including dead values
  • Load order determined so parents always exist before children
04 Test Migration Pilot with related records, not a flat sample. 0/6

Objective A pilot load whose relationships, ownership and roll-up reporting all verify against source.

  1. Configure the Lightfield sandbox to match the agreed model

    Solution architect 3-5 days

    Build the pipelines, stages, custom fields, record types and user roles first. Load into a default configuration and you will only discover the configuration defects at full scale.

  2. Select a connected pilot slice

    Data engineer 0.5 day

    Take complete account trees — 50-100 accounts with all their contacts, deals, activities and files — rather than a flat random sample. Relationship defects are the whole point of a CRM pilot and a flat sample cannot expose them.

  3. Run the load in dependency order with full logging

    Data engineer 1-2 days

    Load users, accounts, contacts, deals, then activities, logging every request against its source ID. Note which failures are transient (rate limits, timeouts) and which are structural (validation, missing parent).

  4. Verify relationships and roll-ups

    RevOps 1-2 days

    Confirm every deal sits on the right account with the right owner and stage, and that pipeline totals per account and per rep match Capsule exactly. Roll-up mismatches almost always mean a relationship or currency defect upstream.

    Migration Validation Tool Diff the pilot batch against source before scaling up
  5. Measure throughput and project the full load

    Data engineer 1 day

    Record actual records-per-hour under Lightfield's API limits and extrapolate, remembering activity history usually dominates volume. If the projection exceeds your window, split the load or trim activity scope now.

  6. Let reps work the pilot data

    Sales leadership 2-3 days

    Put two or three reps in the sandbox against their own accounts. They spot missing context, wrong owners and unusable notes far faster than any reconciliation script, and their buy-in is what makes adoption work.

Don't move on until

  • Relationships intact across the whole pilot slice
  • Pipeline roll-ups match source for the pilot accounts
  • Reps have worked pilot records and confirmed they are usable
05 Cutover Switch the revenue system with the pipeline intact. 0/6

Objective All in-scope CRM data live in Lightfield, integrations repointed, and reps selling on day one.

  1. Pre-load history ahead of the freeze

    Data engineer 5-10 days

    Load closed deals, historical activities and inactive accounts while Capsule stays live. Only open pipeline and the final delta need to move inside the window.

  2. Publish the cutover runbook

    Project manager 1 day

    A timed sequence with owners and abort criteria: freeze, final export, delta load, integration switch, smoke test, go/no-go, rep enablement. Pick a window that avoids quarter-end and month-end close.

  3. Freeze Capsule and take the final delta

    RevOps 2-4 hours

    Set Capsule read-only and export everything changed since the pre-load. Reps updating deals during an unenforced freeze is the classic way to lose the most recent — and most valuable — pipeline changes.

    A rep who updates a deal in the old CRM during the freeze will lose that update permanently.

  4. Load the delta and reconcile the pipeline

    RevOps 2-6 hours

    Run the delta, then verify open pipeline value and count per rep against Capsule before anything else. If the pipeline number is wrong on day one, reps stop trusting the system and never fully come back.

    Migration Validation Tool Confirm the final delta landed before you reopen
  5. Repoint every integration and verify with real records

    IT / integrations 4-8 hours

    Switch marketing automation, quoting, billing, enrichment, dialler and BI connections, then push a live record through each path. An unrepointed integration writing into the old CRM causes divergence that gets harder to reconcile every day.

    Two-way integrations left pointing at the old CRM will keep writing there. Disable them before you switch, not after.

    Cron Expression Builder Schedule the delta syncs that run through the freeze
  6. Go/no-go, then enable the reps

    Project sponsor 1-2 days

    Call the decision explicitly against the exit criteria. Run enablement on real data with their own accounts on screen, and keep Capsule read-only rather than cancelled until validation closes.

Don't move on until

  • Historical load complete and reconciled before the freeze
  • All integrations repointed and verified end to end
  • Reps logged in with pipeline visible and correct
06 Validation Prove the revenue numbers tie out, then close the project. 0/6

Objective Reconciled data, forecast parity with pre-migration reporting, and signed acceptance.

  1. Reconcile every object

    Data engineer 2 days

    Compare counts and values across accounts, contacts, deals, activities and files, plus field-level spot checks on a random sample. Produce a single report suitable for audit and for finance.

    Migration Validation Tool Reconcile Capsule and Lightfield record-for-record
  2. Tie the pipeline and forecast to baseline

    RevOps 2-3 days

    Rebuild forecast, pipeline coverage and win-rate reporting and compare to pre-migration figures. Every variance needs an explanation — most trace back to stage or currency mapping decisions made in Field Mapping.

    Stage-model changes will legitimately shift historical conversion rates. Restate the baseline rather than chasing the difference as a defect.

  3. Verify ownership, visibility and permissions

    RevOps 1-2 days

    Confirm every record has the right owner and that sharing rules, territories and role hierarchy give each rep exactly the visibility intended. Over-broad visibility in a CRM is a data-protection issue as much as a config one.

  4. Re-profile for field completeness

    Data engineer 1 day

    Compare loaded null rates against the source profile per field. A field that arrived empty while counts matched is the failure counts alone cannot detect.

    Data Profiler Prove field completeness held up through the load
  5. Test automation and integration write-back

    RevOps 2 days

    Fire every workflow, assignment rule, sequence and notification, and confirm each integration writes correctly in both directions. Automation is rebuilt rather than migrated, so it is unproven until observed.

  6. Sign off and schedule decommission

    Project sponsor 1 day

    Get written acceptance against the Discovery criteria, keep Capsule read-only for 30-90 days with a final archive export taken, then diarise cancellation so the contract does not auto-renew.

Don't move on until

  • Full reconciliation report complete across all objects
  • Forecast and pipeline reports tie to pre-migration baselines
  • Acceptance signed and Capsule decommission scheduled

Field mapping reference

The field-by-field mapping for each object. Use this as the starting point for your mapping spec.

Parties Accounts 8 fields medium

People records map relatively cleanly to Lightfield Contacts, but orphaned contacts without an organization link require a pre-migration decision on placeholder account handling or enrichment-based resolution.

Capsule fieldLightfield fieldNotes
type: "organisation" → name, about Account → name, description Direct map
type: "person" → firstName, lastName, jobTitle Contact → name, title Direct map
organisation (nested on person) Contact → Account relationship Link via organisation name/ID
emailAddresses [] Contact → email Capsule allows multiple; Lightfield stores multiple
phoneNumbers [] Contact → phone Same handling
addresses [] Account or Contact → address Org addresses → Account, person addresses → Contact
tags [] Labels or custom field Map tags to labels or a multi-select field
Custom fields via fields [] Custom attributes Create matching fields in Lightfield first
Opportunities Opportunities 7 fields medium

Opportunities require Accounts to be fully loaded first and all pipeline stages pre-created in Lightfield, and fields like probability and lost reason have no native target and must be mapped to custom attributes.

Capsule fieldLightfield fieldNotes
name Opportunity → $name Direct
value, currency Opportunity → value Check currency handling
milestone.name Opportunity → $stage Must pre-create stages in Lightfield
probability Custom field Lightfield has no native probability field
expectedCloseDate Opportunity → close date Direct map
party (linked contact/org) Opportunity → $account + Contact $account is required
lostReason Custom field Create if needed
Cus m Field Type Mapping 6 fields high

Mismatched field types between Capsule and Lightfield, particularly freeform text migrated into select fields or multi-select tags with variant spellings, risk silent data loss or validation failures during import.

Capsule fieldLightfield fieldNotes
Text Text Direct map
Number Number Direct map
Date Date Direct map; verify UTC handling (see Edge Cases)
Boolean (checkbox) Boolean Direct map
List (dropdown) Select Pre-create all option values in Lightfield before import; importing a value that doesn't exist in the select list will fail or silently drop the value
Multi-select tag Multi-select Create options first; tag-to-multi-select migration requires pre-cleaning to normalize variant spellings

Risk matrix

Per-object risk for this pair. Plan extra validation around anything marked high.

ObjectRiskNotes
Contacts (People Parties) medium People records map relatively cleanly to Lightfield Contacts, but orphaned contacts without an organization link require a pre-migration decision on placeholder account handling or enrichment-based resolution.
Accounts (Organisation Parties) medium Organization records map to Lightfield Accounts with mostly direct field equivalents, but phantom company name references on person records can produce orphaned account names with no matching Account object in Lightfield.
Opportunities medium Opportunities require Accounts to be fully loaded first and all pipeline stages pre-created in Lightfield, and fields like probability and lost reason have no native target and must be mapped to custom attributes.
Custom Fields high Mismatched field types between Capsule and Lightfield, particularly freeform text migrated into select fields or multi-select tags with variant spellings, risk silent data loss or validation failures during import.
Tags medium Capsule tags are freeform labels with no direct Lightfield equivalent and must be mapped to either Lightfield labels or a multi-select custom field, requiring normalization of variant spellings before migration.
Entries (Notes and Activity History) high Entries must be fetched separately per record at a tighter 50-items-per-page API limit and cannot be imported as native Lightfield email objects, with CSV exports risking silent truncation of note content beyond 32,000 characters in Excel.
Projects high Capsule Projects have no default target object in Lightfield and require either a custom object build, data flattening, or process redesign before migration, making this the highest-effort mapping decision in the entire migration.
Tasks low Tasks are straightforward to-do records linked to parties, opportunities, or projects, though tasks linked to Projects require the Project mapping decision to be resolved first before they can be correctly associated in Lightfield.
File Attachments high File attachments are excluded from Capsule's bulk CSV export entirely and must be individually retrieved via API, making them the most operationally complex data entity to migrate at scale.
Pipeline and Stage Definitions low Pipeline and milestone definitions are metadata that must be pre-created in Lightfield before opportunity loading, but the mapping process itself is low-risk as long as stage configuration is completed and validated before any deal records are imported.

The hard parts

What makes this specific migration difficult, beyond the mechanics.

Polymorphic Party Entity Split

Capsule stores people and organizations as a single unified Party object, requiring every record to be programmatically split by type and re-linked as separate Lightfield Account and Contact objects before loading.

Pipeline and Stage Pre-Configuration

Lightfield requires that all opportunity stages be created in its data model before deals are imported, meaning each Capsule pipeline's milestones must be manually mapped and provisioned in Lightfield first.

Historical Entry History Import

Capsule's activity entries (notes, logged emails, call logs) are stored as separate linked objects and cannot be bulk-loaded as native Lightfield email objects, requiring import as notes or transcripts via the API.

Custom Field Schema Translation

Capsule and Lightfield support different field type sets, and controlled-vocabulary field types such as dropdowns and multi-selects require all option values to be pre-created in Lightfield or imports will silently drop or fail on unrecognized values.

Projects Object Has No Native Target

Capsule Projects have no direct equivalent in Lightfield's default schema, requiring a decision to build a custom object, flatten records into notes and tasks, or retain projects in a separate tool before cutover.

File Attachments Excluded from Export

Capsule's bulk account export ZIP excludes all file attachments entirely, requiring each attachment to be retrieved individually via the API, which significantly increases extraction complexity and time.

Tools used in this playbook

All free, all run entirely in your browser — nothing is uploaded.

FAQ

Can I migrate from Capsule CRM to Lightfield using CSV exports?

Only for low-complexity datasets. Capsule's full export generates CSVs for Contacts, Opportunities, and Projects, but file attachments are excluded, note history is concatenated into a single text column, and relationship integrity depends on name matching. If you need entry history, attachments, or deterministic validation, use the API.

What are the API rate limits for Capsule and Lightfield?

Capsule allows 4,000 API requests per hour per bearer token with a max of 100 records per page (50 for entries). Lightfield enforces 25 requests per second for reads, writes, and searches per organization. Both return 429 status codes when limits are exceeded.

How do Capsule Parties map to Lightfield objects?

Capsule uses a single Party object for both people and organizations, distinguished by a type field. Lightfield separates these into Account (for organizations) and Contact (for people). During migration, split parties by type and link contacts to accounts using the organisation relationship from Capsule's person records.

Can I migrate Capsule Projects to Lightfield?

Not as a clean one-to-one copy. Capsule exposes Projects via the kases API endpoint, but Lightfield has no native project object. Your options are creating a custom object in Lightfield, flattening projects into notes and tasks, or keeping them in a dedicated PM tool.

How do I avoid duplicates in Lightfield during import?

Use deterministic idempotency keys (e.g., capsule-party-{id}) on every create operation so retries are safe. Validate writes with Lightfield's record-specific retrieve endpoints, not list searches, because list results may lag recent changes.

Or skip all of this and let us handle it

Book a 30-minute call and we'll scope your migration in a single session.