CRM migration

Migrate from Time Matters(r) to Twenty CRM

Field-level mapping, validation, and rollback between Time Matters(r) and Twenty CRM. We move data and schema; workflows are rebuilt natively in Twenty CRM.

Time Matters(r) logo

Time Matters(r)

Source

Twenty CRM

Destination

Twenty CRM logo

Compatibility

100%

10 of 10

objects map 1:1 between Time Matters(r) and Twenty CRM.

Complexity

BStandard

Timeline

48–72 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Teams migrate from Time Matters® to Twenty CRM when they need a modern, cloud-accessible CRM that supports API integrations, GraphQL queries, and self-hosting options that Time Matters' on-premises model no longer provides. The migration restructures Time Matters' practice-management data — Contacts, Matters, Events, and ToDo records — into Twenty's People, Opportunities, Notes, and Tasks objects with their original relationships intact. FlitStack AI sequences the migration so foreign-key dependencies resolve correctly: Companies load first, then People with their CompanyId links, then Opportunities with linked People and assigned workspace members. Time Matters exports data via its custom export template to CSV format; Twenty receives data through CSV import or direct GraphQL API calls at up to 200 requests per minute on the Pro plan. The actual data movement takes hours once field mapping is validated. A 24–48 hour delta-pickup window captures any records modified in Time Matters during cutover so Twenty reflects the final state at go-live. We preserve original create dates, modified timestamps, and Matter numbers as custom fields for reporting continuity. Owner resolution happens via email match against Twenty workspace members — unmatched attorneys are flagged before migration commits. All operations write to an audit log; one-click rollback is available if reconciliation surfaces issues. Workflows, document merge templates, and billing logic (trust accounting, retainer tracking) do not migrate — we export Time Matters' workflow definitions as a rebuild reference for your Twenty admin.

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

Time Matters(r) logo

Time Matters(r)

What's pushing teams away

  • The UI and feature set feel dated compared to cloud-first competitors like Clio, MyCase, and Smokeball that offer native mobile apps and modern automation.
  • Billing and accounting modules are widely reported as cumbersome and unintuitive, driving firms to platforms that handle legal billing natively and better.
  • Customer service scores (2.9 on Capterra) reflect frustrations with slow or unresponsive support, especially for firms on older versions.
  • The lack of a public API means no integrations, no automation hooks, and no programmatic way to extract data — forcing firms into manual CSV exports for any migration.
  • Modern competitors offer easier workflow automation; a Reddit thread comparing TimeMatters to MyCase noted that literally everything was easier in the alternative platform.

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 Time Matters(r) objects map to Twenty CRM

Each row shows how a Time Matters(r) 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.

Time Matters(r)

Contact

maps to

Twenty CRM

People

1:1
Fully supported

Time Matters Contact records map 1:1 to Twenty People records. Standard fields — name, email, phone, address — transfer directly. Time Matters allows multiple primary addresses per Contact; Twenty stores one company link per Person via companyId foreign key. We preserve all address variants as custom text fields for reference.

Time Matters(r)

Matter

maps to

Twenty CRM

Opportunity

1:1
Fully supported

Time Matters Matter records map to Twenty Opportunities, the closest equivalent for deal-style tracking. Matter name becomes Opportunity name; amount transfers to amount field; status values map to Twenty pipeline stages via value-mapping table. Legal-specific fields (Matter type, practice area, referring source) migrate as custom fields on the Opportunity.

Time Matters(r)

Contact-Matter Association

maps to

Twenty CRM

Opportunity (linked People)

1:1
Fully supported

Time Matters N:N Contact-Matter associations collapse to Opportunity-Contact links in Twenty. The primary Contact on a Matter becomes the Opportunity's primary link; additional Contacts surface as related People via the Opportunity's relation fields. We generate a mapping table to preserve which Contacts were associated with each Matter.

Time Matters(r)

Event

maps to

Twenty CRM

Task

1:1
Fully supported

Time Matters Events with duration map to Twenty Tasks with a due date. Events that represent meetings transfer as Notes with the event subject and body. The assigned Attorney resolves via email match to the Twenty workspace member; unresolved assignments are flagged for admin review before migration commits.

Time Matters(r)

ToDo

maps to

Twenty CRM

Task

1:1
Fully supported

Time Matters ToDo records map directly to Twenty Tasks. Subject becomes the Task title; due date transfers to due date; completion status maps to Twenty's completed checkbox. Overdue flags and priority levels migrate as custom fields if Twenty's standard priority pick-list does not cover the source values.

Time Matters(r)

Custom Field (Matter-level)

maps to

Twenty CRM

Custom Field on Opportunity

1:1
Fully supported

Time Matters allows custom fields on Matters — practice area, Matter type, billing arrangement, referring attorney. Twenty requires these to be created in Settings → Data Model before import. FlitStack delivers a custom field creation plan with field names, types, and pick-list values based on the exported custom field definitions.

Time Matters(r)

Attachment / Document

maps to

Twenty CRM

Files (via URL or re-upload)

1:1
Fully supported

Time Matters file attachments on Matters and Contacts are exported from the local database and re-hosted. For cloud-hosted Twenty instances, files upload to the workspace storage. For self-hosted Twenty, files are placed in the configured storage path and linked via URL fields on the related record.

Time Matters(r)

Billing Record

maps to

Twenty CRM

Custom Object

1:1
Fully supported

Time Matters trust accounting and billing records have no native equivalent in Twenty. We create a custom object (e.g., BillingRecord) with fields for invoice number, amount, type, status, and related Matter link. Trust account balances require a separate custom object with client escrow fields.

Time Matters(r)

Calendar / Event Link

maps to

Twenty CRM

Note

1:1
Fully supported

Time Matters calendar entries linked to Matters become Notes in Twenty attached to the corresponding Opportunity. The note body captures event title, date, attendees, and outcome. We include the Matter reference in the note's linked record for traceability. The note also captures meeting agenda, participant list, and any follow-up actions for future reference.

Time Matters(r)

Owner / Responsible Attorney

maps to

Twenty CRM

Workspace Member (via email match)

1:1
Fully supported

Time Matters stores responsible attorney and assigned staff per Matter. Twenty has no owner field on Opportunity by default. We map attorney email to Twenty workspace member by email lookup and write the matched user ID to a custom assignedTo field on the Opportunity. Unmatched attorneys are flagged before migration so the admin can invite them to the Twenty workspace first.

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.

Time Matters(r) logo

Time Matters(r) gotchas

High

No API forces file-only migration with manual export wizard steps

Medium

Archived records excluded by default — explicit 'Both' selection required

Medium

Include field names checkbox is easy to miss, leaving CSVs headerless

High

Binary documents and attachments not included in any standard export

Low

Merge template library requires separate file-share export, not in export wizard

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

  • N:N Contact-Matter associations collapse to Opportunity-Contact links

    Time Matters natively supports many-to-many relationships between Contacts and Matters — a single Contact can be associated with multiple Matters and vice versa without foreign-key constraints. Twenty enforces one-to-many via foreign keys on records; a Person record holds one companyId. We resolve N:N associations by designating one primary Contact per Matter (the most-recently-modified or by your specified rule) as the Opportunity's primary link. Additional Contacts are surfaced as related records via the Opportunity's relation fields. Your admin decides whether to create a custom junction object for full N:N preservation or accept the collapsed 1:N model.

  • Billing and trust accounting records have no native Twenty equivalent

    Time Matters integrates billing, time tracking, and trust accounting — retainer balances, client escrow, and invoice histories are core to the product. Twenty has no native billing module; it tracks Opportunities and related activities but not financial transactions, trust ledgers, or accounts receivable. We create a custom BillingRecord object in Twenty with fields for invoice number, amount, type, and related Opportunity link, but the trust accounting logic — which funds belong to which client, running balances, minimum trust requirements — must be handled by a dedicated accounting tool post-migration. We flag all trust-related records during audit so your team can map them to your chosen billing system.

  • Workflows, triggers, and document merge templates do not migrate

    Time Matters stores customizable workflows, automated triggers, and document merge templates that encode your firm's legal process logic. Twenty's workflow automation is limited to basic task triggers and does not replicate Time Matters' workflow engine. All workflows must be rebuilt in Twenty's automation builder or handled by external automation tools. We export Time Matters' workflow definitions — trigger conditions, action steps, and template links — as a reference document your Twenty admin can use to design equivalent automations. Document merge templates (HotDocs, Deal Builder integrations) have no Twenty equivalent and require a separate rebuild or third-party integration.

  • Time Matters exports require custom export template setup per object

    Time Matters does not provide a bulk API export. Data extraction requires creating custom export templates in the desktop application — selecting the record type, choosing fields, setting the output format to CSV with field labels as headers. We provide a written export guide with step-by-step instructions for each record type (Contacts, Matters, Events, ToDo's) so your team can run the exports correctly. Exporting all custom fields requires checking the 'Include All Fields' option per template; failing to do so silently drops custom field columns from the CSV. We validate the exported files before import begins and flag any missing fields for re-export.

  • Twenty's import ordering requirement affects migration sequencing

    Twenty's CSV import enforces referential integrity: Companies must exist before People can reference them via companyId, and Opportunities must reference existing People. We sequence the migration as Companies → People → Opportunities → Notes/Tasks so foreign keys resolve at import time. If your Time Matters database has circular references (a Contact whose Company record is also the primary Contact on a Matter), we surface these in the pre-migration audit and apply a resolution rule — typically designating the Company as the primary entity and clearing the circular Contact link. Running imports out of order produces silent failures where records import without their linked entities.

Migration approach

Six steps for a successful Time Matters(r) to Twenty CRM data migration

  1. Run Time Matters custom exports and audit the data

    Your team runs Time Matters' custom export function for each record type — Contacts, Matters, Events, and ToDo's — using our written export guide. We validate record counts, field completeness, and custom field inclusion before mapping begins. Any records with missing required fields or broken associations are flagged for your Time Matters admin to resolve. This phase typically takes 3–5 business days depending on data volume and the number of custom fields in use.

  2. Map field names, types, and values to Twenty's schema

    FlitStack AI generates a field-mapping document that pairs each Time Matters export column to its Twenty equivalent — direct field names, transformed values, and custom field creation requirements. We create any missing custom fields (Matter_Type__c, Practice_Area__c, Original_Create_Date__c) in your Twenty workspace via the Settings → Data Model panel before import. Value-mapping tables handle pick-list translations where Time Matters and Twenty use different status labels.

  3. Set up Twenty workspace and invite workspace members

    Twenty requires workspace members to exist before their records can reference them. We provide a member-invite list derived from Time Matters' responsible attorney and assigned staff fields. Your admin sends invitations to all attorneys and staff who appear as record owners; accepted invitations enable email-based owner resolution during import. Unmatched owners are flagged and assigned to a fallback workspace member pending invitation acceptance.

  4. Run a sample import with field-level diff

    A representative slice — typically 100–500 records spanning Contacts, Matters, Events, and ToDo's — migrates first. We generate a field-level diff between the source CSV and the imported Twenty records so you can verify name formatting, address concatenation, status value mapping, and owner resolution. Discrepancies are corrected in the mapping document before the full run. This step validates that custom field creation, pick-list values, and date formats transfer correctly.

  5. Execute full migration with delta-pickup and audit logging

    The full migration runs against Twenty's CSV import interface or GraphQL API, sequenced as Companies → People → Opportunities → Notes/Tasks. A delta-pickup window (24–48 hours) captures any records created or modified in Time Matters during the cutover period. Every operation — insert, update, skip, error — writes to an audit log. One-click rollback reverts the entire migration if reconciliation surfaces record count discrepancies or data quality issues that exceed your defined tolerance threshold.

Platform deep dives

Context on both ends of the pair

Time Matters(r) logo

Time Matters(r)

Source

Strengths

  • True relational database architecture with many-to-many Contact-Matter relationships
  • Deep merge-template system with field-level control for document assembly workflows
  • Fully customizable field names, form layouts, and practice-area sort tabs
  • Flat-rate pricing with no per-user billing surprises
  • Long-standing product with a stable file format and export infrastructure

Weaknesses

  • No public API — all data movement is manual file-based export
  • Desktop-client-only (on-premises) with no native cloud or mobile access
  • UI and feature set lag behind modern cloud-native legal platforms
  • Low customer satisfaction scores relative to alternatives on G2 and Capterra
  • Billing and accounting modules considered cumbersome by experienced users
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. 1 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 Time Matters(r) and Twenty CRM.

  • Object compatibility

    B

    1 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

    Time Matters(r): Not applicable.

  • Data volume sensitivity

    B

    Time Matters(r) doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Time Matters(r) 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 Time Matters(r) to Twenty CRM data migrations

Answers to the questions buyers ask most during Time Matters(r) to Twenty CRM migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Time Matters(r) to Twenty CRM migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most Time Matters to Twenty migrations complete within 48–72 hours of clock time for databases under 10,000 total records. Larger setups with 50,000+ records or extensive Matter custom fields extend to 7–14 days. The longest phase is typically the Time Matters export — your team runs the custom export templates and validates record counts, which can take 3–5 business days. Twenty's CSV import itself runs in hours; the delta-pickup window adds 24–48 hours before the final reconciliation.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Time Matters(r).
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