CRM migration

Migrate from LionDesk to Twenty CRM

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

LionDesk logo

LionDesk

Source

Twenty CRM

Destination

Twenty CRM logo

Compatibility

100%

12 of 12

objects map 1:1 between LionDesk and Twenty CRM.

Complexity

BStandard

Timeline

3–7 days

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

LionDesk stored real estate agents' contact records, company accounts, deal pipelines, tasks, and drip campaign sequences in a flat object model with minimal custom field support. Twenty CRM replaces that with a relational model built around People, Companies, Opportunities, Tasks, and Notes — each with its own field schema you control through Settings → Data Model. FlitStack AI extracts LionDesk contacts via the v2 REST API (including custom field values stored as separate value objects), maps them to Twenty People records with companyId relations, translates deals to Opportunities, and sequences the load so that parent records exist before children. Activity history (calls, emails, meetings) migrates as Twenty Tasks linked to the parent record. Drip campaigns, automated sequences, and workflow rules do not transfer — Twenty has a workflow builder with a different trigger-and-action model, so FlitStack exports your sequence definitions as a rebuild reference for your admin. We use Twenty's REST and GraphQL API for all writes, with CSV bulk import fallback for large record sets where API rate limits apply.

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

LionDesk logo

LionDesk

What's pushing teams away

  • Customer support is consistently unresponsive — Capterra support scores of 3.6/5 and Trustpilot at 2.8/5 reflect a pattern of unanswered inquiries and unreachable staff.
  • Users report that add-on costs drive monthly spend significantly above the advertised entry price, making budgeting unpredictable.
  • Multiple users describe the interface as visually dated and functionally basic — suitable for simple workflows but limiting for teams or advanced users.
  • Annual prepayments are difficult to recover; users report refund refusals even when canceling soon after an annual commitment.
  • The platform has a history of glitches and stability issues that agents describe as more trouble than the time savings justify.

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 LionDesk objects map to Twenty CRM

Each row shows how a LionDesk 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.

LionDesk

Contact

maps to

Twenty CRM

People

1:1
Fully supported

LionDesk Contact maps directly to Twenty People. Email, phone, first name, last name, job title, and address fields transfer as-is. The LionDesk contact's primary company assignment becomes the People record's companyId relation — the Company record must exist in Twenty before the People record loads so the foreign key resolves correctly.

LionDesk

Company

maps to

Twenty CRM

Companies

1:1
Fully supported

LionDesk Company maps to Twenty Companies. Company name, domain/website, address, and industry fields transfer as-is. If the LionDesk account has a parent company relationship, that maps to the Companies record's parentId relation — parent records must migrate first to avoid circular reference errors.

LionDesk

Deal

maps to

Twenty CRM

Opportunities

1:1
Fully supported

LionDesk Deal maps to Twenty Opportunities. Deal name, amount, stage status, close date, and owner assignment transfer. Stage values that exist as pick-list options in LionDesk become Twenty's stage pick-list on the Opportunities object. Owner email match resolves to the Twenty workspace member.

LionDesk

Task

maps to

Twenty CRM

Tasks

1:1
Fully supported

LionDesk tasks map to Twenty Tasks with type, subject, due date, and assignee preserved. Tasks linked to a contact in LionDesk carry the People record's id as the task's assignee and a relation back to the People record. Completed status and completion timestamps are preserved as custom fields if not natively supported.

LionDesk

Note

maps to

Twenty CRM

Notes

1:1
Fully supported

LionDesk notes attached to contacts or companies migrate as Twenty Notes linked to the corresponding People or Companies record. Rich text formatting is converted to plain text for compatibility; FlitStack flags any note exceeding Twenty's character limits before the full run.

LionDesk

Custom Field (Text)

maps to

Twenty CRM

People / Companies / Opportunities (custom field)

1:1
Fully supported

LionDesk custom fields of type Text are replicated as custom fields in Twenty via Settings → Data Model before migration. The field name and data type are preserved. Long-text fields that exceed Twenty's default display settings are surfaced in a note to your admin for layout adjustment.

LionDesk

Custom Field (Number)

maps to

Twenty CRM

People / Companies / Opportunities (custom field)

1:1
Fully supported

LionDesk Number custom fields migrate to Twenty custom number fields. Numeric validation is applied during migration — any non-numeric values in the source are flagged in the pre-flight report and optionally loaded as text fields for manual review in Twenty.

LionDesk

Custom Field (Dollar Amt)

maps to

Twenty CRM

People / Companies / Opportunities (custom field)

1:1
Fully supported

LionDesk Dollar Amt custom fields become Twenty currency fields or custom number fields with decimal precision. FlitStack strips any currency symbols and validates decimal formatting during the transformation step. The original LionDesk field name is stored in a mapping log for audit purposes.

LionDesk

Custom Field (Date)

maps to

Twenty CRM

People / Companies / Opportunities (custom field)

1:1
Fully supported

LionDesk Date custom fields map to Twenty date fields. Date formats from LionDesk (which may vary by account settings) are normalized to ISO 8601 (YYYY-MM-DD) during transformation. Any ambiguous date formats are flagged in the pre-flight report with the specific record id and field name.

LionDesk

Owner

maps to

Twenty CRM

Workspace Member

1:1
Fully supported

LionDesk owner ID is resolved to the Twenty workspace member by email match. Unmatched owners — records assigned to a LionDesk user who has not accepted their Twenty invitation — are flagged before migration. Your admin either invites those users first or assigns records to a fallback workspace member.

LionDesk

Drip Campaign / Sequence

maps to

Twenty CRM

Workflow (rebuild reference)

1:1
Fully supported

LionDesk drip campaigns and automated sequences cannot be migrated to Twenty workflows — the trigger-and-action models are fundamentally different. FlitStack exports your sequence definitions (step order, delay days, action type, and recipient criteria) as a structured JSON file that your admin can use as a rebuild guide in Twenty's workflow builder.

LionDesk

Video Email Attachment

maps to

Twenty CRM

File (external link stored as custom field)

1:1
Fully supported

LionDesk's video email and video text features store video content on LionDesk's infrastructure. FlitStack migrates the video URL as a text custom field on the People record. If the video content has been moved to a separate hosting platform, update the URL after migration; the historical reference to the video is preserved as long as the link remains active.

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.

LionDesk logo

LionDesk gotchas

High

LionDesk discontinuation as of September 2025

High

Drip campaign automation does not transfer between CRMs

Medium

SMS and video email assets are LionDesk-hosted

Medium

Bulk export requires API pagination

Low

Custom field type enforcement at write time

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

  • LionDesk drip campaigns have no Twenty equivalent — sequence rebuild required

    LionDesk drip campaigns store automated outreach sequences with time-based triggers, step types, and contact filtering logic. Twenty's workflow builder uses event triggers and action blocks that work differently — there is no concept of a drip cadence that fires over days or weeks on a static list. FlitStack exports your active drip campaign definitions as a structured JSON reference file so your admin can rebuild them step-by-step in Twenty's workflow builder. Do not expect your sequences to carry over automatically — plan 1–2 days of sequence rebuilding after migration.

  • Twenty requires custom fields created before import — CSV import does not create fields

    Twenty's CSV import process creates records, not fields. If you attempt to import a column for a custom field that does not exist in Settings → Data Model, Twenty will reject the column silently or import the data as a string with no validation. FlitStack runs a pre-flight scan of your LionDesk custom fields (Text, Number, Date, Dollar Amt types from the custom_field endpoint) and generates a setup checklist for your Twenty admin to create all required custom fields before data lands. This is the most common point of failure in LionDesk to Twenty migrations and must be done before the migration runs.

  • Import ordering is strict — Companies before People before Opportunities

    Twenty's relational model enforces that the 'one' side of a one-to-many relationship exists before you can reference it. A People record with a companyId must have that Companies record already loaded, or Twenty will reject the import row. FlitStack sequences the migration in three phases: Companies first, then People (with companyId relations resolved), then Opportunities. Custom objects with their own relations load last. Skipping or reordering phases causes foreign key failures that require re-running the affected object type.

  • Twenty API rate limits on Free tier cap migration throughput

    Twenty's Free tier allows 100 API requests per minute; the Pro tier allows 200 per minute. LionDesk migrations with more than 10,000 records will hit rate limits if all writes go through the API. FlitStack uses a hybrid approach: bulk CSV import for large record sets (which bypasses rate limits) and API writes for records that require relationship resolution. Your chosen Twenty tier affects the migration strategy — if you are on the Free tier, migration runs in batches with delay buffers.

  • LionDesk video email content stays on LionDesk's infrastructure

    LionDesk's video email and video text features store video files on LionDesk's own servers. Those video files are not exported through the LionDesk API. FlitStack migrates the video URL as a custom text field on the People record so the reference is preserved. However, LionDesk may shut down its media infrastructure after the September 2025 discontinuation, which would break those video links. If the video content has business value, download it before migration and re-host on your own storage.

Migration approach

Six steps for a successful LionDesk to Twenty CRM data migration

  1. Audit LionDesk data and build the Twenty schema checklist

    FlitStack pulls your LionDesk account via the v2 REST API — contacts, companies, deals, tasks, notes, custom field definitions, and custom field values — and inventories the full record set. We cross-reference against Twenty's standard objects (People, Companies, Opportunities, Tasks, Notes) and flag every LionDesk custom field that requires a Twenty custom field to be created. Your admin receives a pre-migration checklist to create all required custom fields in Settings → Data Model before any data loads.

  2. Invite Twenty workspace members and resolve owner mappings

    Twenty requires that users exist in the workspace before their id can be referenced as an assignee or owner. FlitStack extracts every unique owner email from LionDesk and matches them against Twenty workspace members. Any owner without a Twenty account is flagged — your team either invites them before migration or assigns their records to a fallback workspace member. No record lands without a resolved owner.

  3. Migrate Companies first, then People, then Opportunities

    Twenty enforces import ordering for relational integrity. FlitStack sequences the load in three phases: (1) Companies with their address and domain data, (2) People with companyId relations resolved against the migrated Companies, and (3) Opportunities linked to both Companies and People. Each phase runs with a field-level diff before the full commit so you can verify record counts, custom field values, and relationship integrity before moving to the next phase.

  4. Migrate activity history as Tasks and Notes

    LionDesk call logs, email records, and meeting notes migrate as Twenty Tasks linked to the parent People record. Notes attached to contacts or companies migrate as Twenty Notes with the appropriate relation. FlitStack maps the activity type (call, email, meeting) to a task type field for filtering in Twenty's table view. Original timestamps and owner assignments are preserved. Video email URLs are stored as custom text fields on the People record.

  5. Run sample migration with field-level diff and delta pickup

    A representative slice of records — typically 100–500 across contacts, companies, deals, and activities — migrates first. FlitStack generates a field-level diff report comparing the source LionDesk values against the destination Twenty values for every mapped field. Your team reviews the diff and approves before the full run commits. After full migration, a delta-pickup window captures any records modified in LionDesk during the cutover period. An audit log records every operation, and one-click rollback is available if reconciliation identifies data integrity issues.

Platform deep dives

Context on both ends of the pair

LionDesk logo

LionDesk

Source

Strengths

  • Entry price of $21/month is among the lowest for any full-featured real estate CRM with drip campaigns and texting included.
  • Built-in texting and video email are genuine differentiators that keep agent communication centralized without third-party add-ons.
  • Pre-built real estate drip templates and lead tracking workflows reduce initial setup time for agents unfamiliar with CRM configuration.
  • Open API with OAuth 2.0 authentication allows third-party integrations and programmatic data access for migration tooling.

Weaknesses

  • Support quality is consistently poor across review platforms — agents report long response times and unresolved tickets.
  • The UI is described as basic and visually dated, limiting usability for teams or agents with complex workflows.
  • Annual prepayment refund refusals create a financial risk for agents who need to exit the platform early.
  • LionDesk was discontinued in September 2025, making long-term platform stability a migration urgency factor rather than a future consideration.
  • No publicly documented bulk export or bulk API capability means large contact databases may require iterative API extraction rather than a single pull.
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. 3 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 LionDesk and Twenty CRM.

  • Object compatibility

    B

    3 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

    LionDesk: Not publicly documented in available developer documentation.

  • Data volume sensitivity

    B

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

Estimator

Estimate your LionDesk 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 LionDesk to Twenty CRM data migrations

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

Can't find your answer?

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

Book a free 30 minute consultation

Most LionDesk to Twenty migrations complete in 3–7 days for under 50,000 records. The longest planning step is creating custom fields in Twenty before import — Twenty does not create fields during CSV import, so all LionDesk custom fields must be pre-built in Settings → Data Model. Larger setups with 50,000–500,000 records or complex custom field counts extend to 1–3 weeks. The import ordering constraint (Companies before People before Opportunities) also adds validation time when record relationships are deep.

Adjacent paths

Related migrations to explore

Ready when you are

Move from LionDesk.
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