CRM migration

Migrate from Column Case Management to Twenty CRM

Field-level mapping, validation, and rollback between Column Case Management and Twenty CRM. We move data and schema; workflows are rebuilt natively in Twenty CRM.

Column Case Management logo

Column Case Management

Source

Twenty CRM

Destination

Twenty CRM logo

Compatibility

100%

12 of 12

objects map 1:1 between Column Case Management and Twenty CRM.

Complexity

BStandard

Timeline

24–48 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Column Case Management is a purpose-built investigative case-management platform used by government agencies, law enforcement bureaus, and fraud-investigation teams. Its data model centers on Cases, Subjects, Evidence, Tasks, and Documents — organized around investigative workflows, solvability scoring, and role-based case access. Twenty CRM is an open-source sales-oriented CRM with standard objects for People, Companies, Opportunities, Tasks, and Notes, plus unlimited custom objects. The migration requires transforming Column's investigative-case schema into Twenty's People/Company/Opportunity model — the most substantial structural divergence in our catalog. We map Column Cases to Twenty Opportunities (repurposed as a 'Case' custom object if the Opportunity label is misleading), Column Subjects to Twenty People, and Column Organizations to Twenty Companies. Evidence records and case attachments migrate as Twenty Notes and Files. Column's investigator and group assignments become Twenty Workspace Members, resolved by email match. Workflows, triggers, and integration connectors (BMC Remedy, AR Framework hooks) do not migrate — we export their definitions for your Twenty admin to rebuild using Twenty's workflow builder. The migration uses Twenty's REST and GraphQL APIs, respecting its rate limits of 100 requests per minute on the free tier and 200 on Organization cloud, with CSV import as a secondary path for large record sets.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

Column Case Management logo

Column Case Management

What's pushing teams away

  • Customization carries a high cost — one reviewer noted that moving to a new version requires paying again to re-apply the same customizations, creating an upgrade cost trap.
  • Enterprise support in large corporate environments with complex security architecture and disparate processes proves difficult to coordinate, even though the vendor is described as receptive to feedback.
  • Organizations seeking a simple, lightweight case tracker find Column's depth of configuration overwhelming for straightforward use cases.
  • Limited public API documentation and unclear bulk-export mechanisms make it difficult for technical teams to evaluate migration paths before committing.

Choosing

Twenty CRM logo

Twenty CRM

What's pulling them in

  • Top open-source CRM on GitHub with 40.6K stars, giving teams full source code access and infrastructure ownership without per-feature licensing surprises.
  • Free self-hosting under AGPL-3.0 means unlimited users and custom objects for the cost of cloud infrastructure alone, typically $20–100/month.
  • Pricing page explicitly mocks competitors for charging add-on fees for API access, webhooks, and workflows — transparency that resonates with RevOps teams burned by Salesforce.
  • Unlimited custom objects and fields with no price impact, letting teams shape the data model to their business rather than forcing business into rigid schemas.
  • Modern TypeScript/React/PostgreSQL stack means developer-led teams can extend, self-host, or integrate without fighting legacy architecture.

Object mapping

How Column Case Management objects map to Twenty CRM

Each row shows how a Column Case Management object lands in Twenty CRM, including any object-level transformations, lookup resolution, or schema-design dependencies.

Typical mapping — final map is confirmed during the sample migration step.

Column Case Management

Case

maps to

Twenty CRM

Opportunity (Case custom fields)

1:1
Fully supported

Column Cases map to Twenty Opportunities with a suite of custom fields: Case_Type__c, Investigative_Status__c, Solvability_Score__c, and Case_Priority__c. The case title becomes Opportunity Name, case create date becomes a custom Created_Date__c field since Twenty's standard CreatedDate is set at import time. Case status values (Open, In Progress, Closed, etc.) are mapped via value_mapping to Twenty custom pick-list options.

Column Case Management

Case Assignment

maps to

Twenty CRM

Opportunity Assignee (Workspace Member relation)

1:1
Fully supported

Column Case assignments (investigator ID and group ID) resolve against Twenty Workspace Members by email match. Unmatched investigators are flagged before migration. Multiple-case assignments per investigator are preserved by linking the investigator's email as a custom field on each Opportunity record in Twenty.

Column Case Management

Subject

maps to

Twenty CRM

People

1:1
Fully supported

Column Subjects — the individuals being investigated — map directly to Twenty People. Standard fields (first name, last name, email, phone, job title, address) transfer as direct mappings. The Column Subject_ID is stored as a custom Source_System_ID__c field on the Twenty People record for traceability and delta-run de-duplication.

Column Case Management

Subject Type

maps to

Twenty CRM

People (Custom Select field: Subject_Type__c)

1:1
Fully supported

Column CCM subject types (Witness, Suspect, Victim, etc.) have no direct equivalent in Twenty's standard People fields. We create a custom select field Subject_Type__c on the People object with the exact pick-list values from Column CCM, preserving the investigative role label on each People record.

Column Case Management

Organization (Column CCM company record)

maps to

Twenty CRM

Companies

1:1
Fully supported

Column Organizations — the companies or agencies associated with cases — map directly to Twenty Companies. Fields including name, domain/website, industry, employee count, and address transfer as direct mappings. Column Organization_ID is preserved as Source_System_ID__c for reference and delta-run matching.

Column Case Management

Evidence Record

maps to

Twenty CRM

Notes + Files (or Custom Object)

1:1
Fully supported

Column Evidence records (description, evidence type, chain-of-custody notes, file attachments) are split: the descriptive and textual data migrates to Twenty Notes attached to the relevant Case-Opportunity. File attachments are re-uploaded to Twenty Files and linked to the same Opportunity. Teams requiring full evidence-chain metadata create a custom Evidence custom object in Twenty, with fields for evidence type, custody notes, and a File relation.

Column Case Management

Task / Action Item

maps to

Twenty CRM

Tasks

1:1
Fully supported

Column Tasks associated with cases (follow-up actions, evidence collection steps, interview scheduling) map directly to Twenty Tasks. Task title becomes the Task name, description maps to the body, status values map via value_mapping to Twenty Task status (To Do, In Progress, Completed), and the assigned investigator resolves by email match to a Twenty Workspace Member.

Column Case Management

Document

maps to

Twenty CRM

Notes + Files

1:1
Fully supported

Column Documents (case files, reports, correspondence) migrate as Twenty Notes with file attachments. The document title becomes the Note subject. For documents without a note body, we create a minimal Note record in Twenty and attach the file. All documents inherit the same Opportunity (Case) parent linkage as the case they belong to.

Column Case Management

User / Investigator

maps to

Twenty CRM

Workspace Members

1:1
Fully supported

Column Users and Investigators resolve against Twenty Workspace Members by email. Active Column users without a matching email are flagged as unmapped before migration — your team either creates Twenty accounts for them first or assigns their records to a fallback Workspace Member. Role and permission sets from Column CCM (Admin, Investigator, Viewer) cannot transfer directly and must be reconfigured in Twenty's permission settings.

Column Case Management

Group / Unit

maps to

Twenty CRM

Twenty Workspace (no direct equivalent)

1:1
Fully supported

Column CCM organizational Groups and Units have no direct equivalent in Twenty CRM. Group-based case assignments are resolved at the individual investigator level by email match. If your team relies on group-level permissions and reporting in Column, that structure must be rebuilt in Twenty using Workspace-level Views and filtering.

Column Case Management

Integration: BMC Remedy / AR Framework

maps to

Twenty CRM

No equivalent

1:1
Fully supported

Column CCM integrations with BMC Remedy (auto-case creation from incidents) and the AR Framework do not have equivalents in Twenty CRM. These connections must be rebuilt from scratch — either using Twenty's REST API to push incident data or using a middleware tool like Zapier or Make to trigger Opportunity creation in Twenty when an incident is created in Remedy.

Column Case Management

Attachment / File

maps to

Twenty CRM

Files (Twenty CRM native)

1:1
Fully supported

Column file attachments — documents, evidence files, images — are re-uploaded to Twenty Files and linked to the parent record (Opportunity or People). Twenty's file size limits apply. We re-download inline images from notes, rehost them in Twenty's file storage, and update the linked Note with the new file reference.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

Column Case Management logo

Column Case Management gotchas

Medium

Float/Concurrent license scoping affects migration user mapping

Medium

Customization re-application required on major version upgrades

High

No publicly documented REST API with published rate limits

Medium

BMC/Remedy integration creates auto-generated Cases that may duplicate manually entered records

Twenty CRM logo

Twenty CRM gotchas

High

Import order is enforced and critical

High

Export limited to 20,000 records and visible columns only

Medium

Soft-deleted records count toward uniqueness and trigger restores

Medium

API rate limits cap at 200 req/min on Organization tier

Low

No native email sequences — follow-up cadences require external tools

Pair-specific challenges

  • Investigative case schema has no native equivalent in Twenty CRM

    Column CCM's entire data model is built around investigative Cases with solvability scores, case types, investigative-status flags, and evidence chains of custody. Twenty CRM's Opportunity object has no native fields for these concepts. We handle this by creating a suite of custom fields on Twenty's Opportunity (Case_ID__c, Case_Type__c, Solvability_Score__c, Case_Status__c, Investigative_Type__c, Case_Origin__c) and a custom Evidence object with custody metadata — but the investigative workflow logic (case-state transitions, assignment routing, notification triggers) cannot live inside these fields and must be rebuilt in Twenty's workflow builder as a post-migration step. Teams should plan 2–4 weeks for rebuilding investigative automation in Twenty.

  • Case-level role-based permissions do not map to Twenty's permission model

    Column CCM enforces case-level access control — users and groups see only cases they are assigned to or have permission to view. Twenty CRM uses a Workspace-level permission model with object-level and field-level visibility settings, but it does not have a native per-record access-control mechanism equivalent to Column's case-level permissions. We resolve investigator access by matching Column users to Twenty Workspace Members and setting the Opportunity owner to the assigned investigator. If your team requires Group-level access controls in Twenty (e.g., a unit that can see all cases for their division), that structure must be designed as a set of filtered Views and permission sets after migration.

  • BMC Remedy and AR Framework integrations have no Twenty CRM equivalent

    Column CCM integrates with BMC Remedy and the AR Framework to auto-create case records from incidents. Twenty CRM has no BMC Remedy connector and no auto-case-creation trigger from external ITSM systems. We preserve the integration logic as an export of the current Column configuration so your technical team can rebuild it using Twenty's REST API, GraphQL API, or webhooks on the Organization tier. For teams relying on Remedy-to-Case auto-creation, this is a significant integration gap that requires a middleware solution (Zapier, Make, or custom API wrapper) as part of post-migration setup.

  • Column CCM API export limitations affect migration planning

    Column CCM's API capabilities vary by deployment — on-premise instances, government-hosted environments, and instances behind restrictive firewalls may not expose the full REST API needed for automated export. Before migration, we audit your Column CCM instance's API surface. If API access is limited, we fall back to CSV exports from the Column CCM reporting interface, which may require additional data transformation steps. We surface any API constraints in the migration plan before the first record moves.

  • Twenty CRM's free-tier rate limit constrains bulk migration speed

    Twenty CRM's REST and GraphQL APIs enforce rate limits of 100 requests per minute on the free cloud tier and 200 requests per minute on the Organization cloud tier ($19/user/month). Large migrations with tens of thousands of records may be throttled under these limits. We use batched API calls and respect the rate limit headers returned by Twenty's API, adding retry logic with exponential backoff. For migrations exceeding 20,000 records, we combine API-based migration for relational data (People, Companies, Opportunities) with Twenty's CSV import for bulk record ingestion, staying within rate-limit constraints while maintaining data integrity.

Migration approach

Six steps for a successful Column Case Management to Twenty CRM data migration

  1. Audit Column CCM data export and schema

    We connect to Column CCM's API (or work with CSV exports from your reporting interface) and pull a complete data inventory: all Cases, Subjects, Organizations, Evidence records, Tasks, Notes, Documents, and User accounts. We audit field completeness, duplicate rates, and relationship integrity. We also document your Column CCM workflows, triggers, and integration connections (BMC Remedy, AR Framework) so we can export their definitions for your Twenty admin to rebuild. This phase produces the migration specification document — your sign-off before any data moves.

  2. Set up Twenty CRM workspace and custom schema

    Before data lands, we create all required custom fields in Twenty: Case_ID__c, Case_Type__c, Solvability_Score__c, Case_Status__c, Investigative_Type__c, Case_Origin__c, Subject_Type__c, Evidence_Type__c, Custody_Notes__c, and Source_System_ID__c on relevant objects. If you prefer a dedicated Case object, we create that as a Twenty custom object with the same fields. We invite all team members to Twenty and match their email addresses against Column CCM investigator and user records. Your admin reviews the custom field setup in Twenty Settings before we proceed to migration.

  3. Run sample migration with field-level diff

    A representative slice migrates first — typically 100–300 records spanning a few Cases, their linked Subjects, Evidence records, Tasks, and Notes. We generate a field-level diff between the Column CCM source values and the migrated Twenty records so you can verify that case status mapping, investigator assignment, solvability score preservation, and evidence-chain linkage all landed correctly. We surface any mapping corrections before the full run commits. This sample run typically completes in 2–4 hours.

  4. Execute full migration with delta-pickup window

    The full data set migrates in sequenced order respecting Twenty's API rate limits and the dependency order (Organizations first, then People, then Opportunities, then Tasks/Notes). A delta-pickup window — typically 24–48 hours — captures any records created or modified in Column CCM during the cutover window. All operations are logged in an audit trail, and one-click rollback is available if reconciliation fails. Your team keeps working in Column CCM throughout the migration window.

  5. Export workflow definitions for Twenty rebuild

    FlitStack AI exports your Column CCM workflow definitions, trigger logic, and automation rules as structured documentation — including trigger conditions, action sequences, and notification routing. This document serves as the rebuild reference for your Twenty admin. We do not migrate automations directly (they are not data), but we give your team the specification they need to reconstruct investigative workflows using Twenty's workflow builder. Integration connections (BMC Remedy, AR Framework hooks) are documented separately for your technical team to implement via Twenty's REST API or webhook endpoints.

  6. Validate migrated records and final reconciliation

    We run record-count reconciliation across all object types, spot-check field values against the source data, and verify that all file attachments landed in Twenty Files and are linked to the correct parent records. Investigator assignments are verified by sampling 20+ records and comparing the assigned user in Twenty against the Column CCM investigator. We deliver a final migration report with record counts, any unmapped records, and the action items for your Twenty admin to complete post-migration setup.

Platform deep dives

Context on both ends of the pair

Column Case Management logo

Column Case Management

Source

Strengths

  • Float/Concurrent licensing model significantly reduces cost for organizations with variable caseload sizes.
  • Built-in BMC/Remedy integration auto-populates Cases from IT service desk incidents without manual re-entry.
  • Complete field-level audit trail satisfies compliance requirements for government and law enforcement agencies.
  • Web-based UI with version 9.x performance improvements, including faster search and responsive workflows.
  • Deep vertical coverage across fraud, Medicaid, law enforcement, and internal affairs with pre-built case types.

Weaknesses

  • Customization costs escalate quickly and upgrades may require re-purchasing existing customizations.
  • Limited public API documentation makes programmatic migration and integration development difficult to scope.
  • Enterprise-scale deployments in large organizations face coordination challenges around security and architecture.
  • Low review volume across G2, Capterra, and Gartner makes independent evaluation harder for prospective buyers.
Twenty CRM logo

Twenty CRM

Destination

Strengths

  • AGPL-3.0 open-source license with full source code on GitHub — no vendor lock-in, no sunset risk.
  • Unlimited users and unlimited custom objects on self-hosted, with no feature gating based on headcount.
  • REST and GraphQL APIs available on all paid tiers, not locked behind an enterprise add-on fee.
  • MCP server and webhooks shipped as standard features, not premium upgrades.
  • Modern PostgreSQL-backed data model that developer teams can query, extend, and self-host.

Weaknesses

  • Recent v1.0 release means limited production hardening compared to CRMs with multi-year operational track records.
  • No native email sequencing or sales engagement tools — follow-up cadences require a separate platform.
  • No native two-way email sync or inbox integration, requiring third-party connectors for full activity logging.
  • Self-hosting 'free' pricing hides real infrastructure and DevOps costs that stack up over time.
  • Workflow automation is functional but lacks the complexity needed for sophisticated multi-step sales motions.

Complexity grading

How hard is this migration?

Standard CRM migration. 2 of 8 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Column Case Management and Twenty CRM.

  • Object compatibility

    B

    2 of 8 objects need a mapping; the rest are 1:1.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    8-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    Column Case Management: Not publicly documented.

  • Data volume sensitivity

    B

    Column Case Management doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Column Case Management to Twenty CRM migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about Column Case Management to Twenty CRM data migrations

Answers to the questions buyers ask most during Column Case Management to Twenty CRM migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Column Case Management to Twenty CRM migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most Column CCM to Twenty CRM migrations complete in 24–48 hours of clock time for under 5,000 records. Larger setups with 50,000+ records, multiple case types, and evidence-file volumes extend to 5–10 days. The custom field creation phase in Twenty (for solvability scores, case types, and investigative status) is the longest planning step before data moves. Twenty's API rate limits (100 req/min on free tier, 200 on Organization tier) govern the migration speed for large record sets.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Column Case Management.
Land in Twenty CRM, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day