CRM migration

Migrate from Touchdown to Twenty CRM

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

Touchdown logo

Touchdown

Source

Twenty CRM

Destination

Twenty CRM logo

Compatibility

58%

7 of 12

objects map 1:1 between Touchdown and Twenty CRM.

Complexity

BStandard

Timeline

2-4 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Touchdown to Twenty CRM is a migration from an undocumented API marketing automation platform to an open-source, self-hostable CRM with a flexible custom data model. Touchdown does not publish a public API schema, so we begin every engagement with API exploration to map the live data model before any extraction begins. We migrate Contacts to People, Companies to Companies, Deals to Opportunities with pipeline and stage configuration, and Engagement history (calls, emails, meetings, tasks) as linked timeline entries against the correct People and Company records. Touchdown's audience Segments and Campaign structures do not map 1:1 to Twenty; we export segment definitions and campaign metadata as written records for the customer's admin to recreate using Twenty's filter and view system. We do not migrate workflows, sequences, or automations as code. Custom fields require pre-creation in Twenty Settings before import; we include this schema setup in scope.

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

Touchdown logo

Touchdown

What's pushing teams away

  • No publicly documented public API — integrations live inside the Microsoft ecosystem only, so customers needing external system connections (e-commerce, webinar tools, attribution) hit a ceiling.
  • Feature depth is modest compared with enterprise marketing platforms — multi-touch attribution, advanced scoring, and account-based marketing are limited relative to HubSpot, Marketo, or Salesforce Marketing Cloud.
  • Reliance on Microsoft Dynamics / Power Platform means customers leaving that stack effectively must leave Touchdown too; the product has no standalone CRM mode.
  • Limited public review footprint (small Gartner / G2 sample) makes vendor due diligence harder for buyers who rely on third-party validation.
  • Pricing details beyond the entry tier are not transparently published; buyers must contact sales for larger seat counts and SMS volumes.

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

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

Touchdown

Contact

maps to

Twenty CRM

People

1:1
Fully supported

Touchdown Contacts map directly to Twenty People records. Email address serves as the primary dedupe key. Standard fields (name, email, phone, address) migrate 1:1. Custom contact properties are discovered during API exploration and pre-created as fields in Twenty's Data Model before import. Owner assignment (Account Owner in Touchdown) maps to Twenty workspace Members resolved by email match.

Touchdown

Company

maps to

Twenty CRM

Company

1:1
Fully supported

Touchdown Company records map to Twenty Company records. Company name is the primary dedupe key. Industry, website, and address fields migrate directly. If Touchdown Company records are linked to Contacts, the relationship is preserved by importing Companies before People so the Twenty People record can reference the Company via the WorkGroup or linked relationship. Schema discovery confirms whether Company exists as a named object or as contact-level company fields during scoping.

Touchdown

Deal

maps to

Twenty CRM

Opportunity

1:1
Fully supported

Touchdown Deal records map to Twenty Opportunities. Deal stage maps to a Twenty pipeline stage. We configure the pipeline and stage values in Twenty Settings before migration. Closed-Won and Closed-Lost status from Touchdown migrate as Opportunity stage values. Deal amount and close date transfer to Opportunity amount and closeDate fields.

Touchdown

Pipeline

maps to

Twenty CRM

Pipeline

lossy
Fully supported

Touchdown pipelines become Twenty Pipelines. We create the Pipeline with named stages and probability percentages in Twenty Settings before Deals are imported. If Touchdown uses multiple pipelines for different product lines or business units, each becomes a separate Twenty Pipeline.

Touchdown

Campaign

maps to

Twenty CRM

(Written inventory)

lossy
Fully supported

Touchdown campaign metadata (name, type, status, associated contacts, and audience segment definition) is exported as a written inventory document. Twenty does not have a native Campaign object with the same feature depth. We document campaign structure, audience criteria, and associated custom fields so the customer's admin recreates campaign logic using Twenty's views, filters, and any applicable workflow builder features.

Touchdown

Segment

maps to

Twenty CRM

Filter / View

lossy
Fully supported

Touchdown audience segments are discovered via API and exported as structured definition records (filter criteria, segment name, associated contacts). Twenty uses Filters and saved Views on People and Company objects as the equivalent. We provide a written segment recreation guide mapping each Touchdown segment definition to the equivalent Twenty filter configuration.

Touchdown

Email Template

maps to

Twenty CRM

(Written inventory)

lossy
Fully supported

Touchdown email template content and merge fields are exported as a structured document. Twenty does not have a native email template library with merge token support as a standard feature. We export template HTML and associated tokens so the customer's admin recreates templates in their chosen email sending tool and documents the replacement workflow.

Touchdown

Custom Field

maps to

Twenty CRM

Custom Field

lossy
Fully supported

Touchdown custom field schema is undocumented. We discover all custom field names, types, and picklist values during API exploration and pre-create them in Twenty's Data Model (Settings → Data Model) before any Contact, Company, or Deal import. Fields must exist before import because CSV import creates records, not fields. This step is done in the staging environment before production migration.

Touchdown

Engagement: Email

maps to

Twenty CRM

Task (linked to People)

1:1
Fully supported

Touchdown email engagement records migrate as Twenty Task records linked to the corresponding People record. Subject, body, direction (sent/received), and timestamp transfer to Task fields. ActivityDate is set to the original Touchdown timestamp to preserve timeline ordering.

Touchdown

Engagement: Call

maps to

Twenty CRM

Task (linked to People)

1:1
Fully supported

Touchdown call engagement records migrate as Twenty Task records with call-specific fields where supported. Call disposition, duration, and notes transfer to custom Task fields. The task is linked to the corresponding People record. Timestamp ordering is preserved.

Touchdown

Engagement: Meeting

maps to

Twenty CRM

Task or Event

1:1
Fully supported

Touchdown meeting engagements migrate to Twenty Tasks with meeting-specific metadata (date, duration, location). If Twenty supports Event records at the migration time, meetings land as Event records; otherwise, they migrate as Task records. Linked attendees resolve to People records by email match.

Touchdown

Owner

maps to

Twenty CRM

User (Workspace Member)

1:1
Fully supported

Touchdown Owner IDs on Contact, Company, and Deal records are resolved by email match to Twenty workspace Members. We extract all distinct owner emails, match against the Twenty Members list, and flag any Touchdown owner without a corresponding Twenty Member in the reconciliation queue. The customer's admin provisions missing Members before record import resumes.

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.

Touchdown logo

Touchdown gotchas

Low

Catalog website appears mismatched

Medium

Touchdown stores its data inside the Dynamics 365 / Dataverse tenant

Medium

SMS data and consent records require careful handling

Low

Templates and landing pages reference Microsoft-hosted assets

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

  • Touchdown API schema is undocumented; API exploration is required first

    Touchdown does not publish a public API schema or developer documentation. Before we can extract any data, we perform authenticated API exploration to map the live data model: object names, field names, field types, picklist values, and relationship fields. This discovery phase adds time to scoping and must be completed before extraction begins. Custom fields, Segments, and engagement history structure are all unknown until exploration completes. We include this discovery in the migration scope and budget.

  • Twenty's workflow builder is actively developing; feature parity gaps exist

    Twenty's workflow and automation builder is in active development (v1.x as of 2026). Reddit discussions in r/CRM note that native sequencing capabilities are limited and the workflow builder is not yet at feature parity with mature CRMs like Salesforce or HubSpot. Teams migrating from Touchdown's campaign automation should expect to rebuild automation logic using a third-party tool (n8n, Zapier) or to wait for Twenty's workflow feature to mature. We document the current state of Twenty's automation capabilities at migration time and flag feature gaps explicitly.

  • Custom fields must be created in Twenty before CSV import runs

    Twenty's CSV import creates records but not fields. All custom fields from Touchdown must be pre-created in Settings → Data Model before any import begins. If Touchdown has undocumented custom fields discovered during API exploration, we create them in Twenty's staging environment first, validate the import, then recreate in production. Skipping this step causes import failures or data landing in the wrong fields. We include schema pre-creation as a required step in the migration checklist.

  • Twenty performance degrades above 600 active records on cloud tier

    Cloud-hosted Twenty users on Reddit report performance degradation above approximately 600 leads, with views occasionally resetting and UI responsiveness slowing. Self-hosted deployments on adequate infrastructure (Docker on PikaPods, Railway, or a VPS) do not exhibit the same limits. We flag this constraint during scoping; teams with large data volumes should plan for self-hosted deployment to avoid the performance ceiling on the managed cloud tier.

  • Segment and campaign logic has no direct Twenty equivalent

    Touchdown's audience segments and campaign metadata do not map to any native Twenty object. Twenty uses Filters and saved Views as the equivalent segmentation tool, but these must be manually recreated after migration. We export a written segment and campaign inventory document that includes the original filter criteria, segment names, associated contact counts, and recommended Twenty filter configuration. The customer's admin implements the filters post-migration. This is not a data migration limitation but a platform capability gap that requires admin configuration.

Migration approach

Six steps for a successful Touchdown to Twenty CRM data migration

  1. Authenticated API discovery

    We authenticate against the customer's Touchdown instance via their existing credentials and perform systematic API exploration to map the live data model. We enumerate all object endpoints, retrieve field schemas for Contacts, Companies, Deals, Campaigns, Segments, and Engagements, and capture custom field names, types, and picklist values. The discovery output is a written schema map that forms the basis of the extraction plan. This step is required because Touchdown has no published API documentation.

  2. Twenty workspace provisioning and schema pre-creation

    We set up the Twenty workspace (cloud or self-hosted per the customer's choice) and pre-create all custom fields discovered from Touchdown in Settings → Data Model. We configure Pipelines and stage values to match the Touchdown deal structure, invite all team Members so that owner resolution can proceed, and validate the schema in a staging import before touching production data. Fields must exist before import.

  3. Data extraction, cleansing, and transformation

    We extract all Contact, Company, Deal, Engagement, and custom field data from Touchdown via authenticated API calls. We cleanse the data: deduplicate by email address, resolve null owner references, normalize date formats and phone number formatting, and clean up deprecated or unused custom field values. We apply the field mapping defined during schema discovery and output staging CSVs or JSON payloads ready for Twenty import.

  4. Staging import and reconciliation

    We run a full import into the Twenty staging environment using production-like data volume. We reconcile record counts for People, Companies, Opportunities, and Tasks against the source Touchdown data. We spot-check 25-50 random records for field-level accuracy and verify that custom field values landed correctly. We identify and correct any mapping errors before production migration begins.

  5. Owner resolution and user provisioning

    We extract every distinct Touchdown owner referenced on Contact, Company, Deal, and Engagement records and match by email against the Twenty Members list. Owners without a matching Twenty Member go to a reconciliation queue. The customer's admin provisions any missing Members before record import resumes. This step is a prerequisite for the production migration because OwnerId references must be satisfied on import.

  6. Production migration in dependency order

    We run production migration in record-dependency order: Companies first, then People (with Company relationship resolved), then Opportunities (with People and Owner references resolved), then Engagement history (Tasks linked to People), then custom object records. Each phase emits a row-count reconciliation report. We freeze Touchdown writes during the cutover window, run a final delta migration of any records modified during the migration period, then designate Twenty as the system of record.

  7. Cutover, validation, and rebuild handoff

    We deliver a segment and campaign inventory document listing every Touchdown audience segment with its filter criteria and a recommended Twenty filter configuration, plus every campaign with its metadata. We deliver a written workflow and automation note documenting any campaign automation logic that cannot migrate to Twenty. We provide a one-week hypercare window to resolve reconciliation issues. We do not rebuild automations in Twenty; that work requires a separate scoping engagement with the customer's admin or a RevOps partner.

Platform deep dives

Context on both ends of the pair

Touchdown logo

Touchdown

Source

Strengths

  • Lives natively inside Dynamics 365, Power Apps, and Business Central — no third-party sync layer to break.
  • Multi-channel marketing in one suite: email, SMS, landing pages, forms, events, sales automation.
  • European hosting and GDPR-by-design positioning eases EU procurement.
  • Drag-and-drop template builder lowers the cost of running a small marketing team.
  • Entry-level pricing accessible to SMBs migrating off Mailchimp or basic email tools.

Weaknesses

  • No documented public REST API limits non-Microsoft integrations and migration tooling.
  • Feature depth lags enterprise platforms like Marketo, HubSpot Marketing Hub, and Salesforce Marketing Cloud.
  • Tightly coupled to the Microsoft Dynamics ecosystem; standalone use is not a supported deployment.
  • Small public review footprint makes buyer due diligence harder.
  • Pricing beyond the entry tier is not transparently published.
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 Touchdown 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

    Touchdown: Governed by Dataverse Web API service protection limits (per-user/per-app rate ceilings published by Microsoft). Touchdown does not impose additional documented limits on top..

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

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

Book a free 30 minute consultation

Most migrations land between two and four weeks for accounts under 10,000 Contacts and 2,000 Deals with no custom objects and straightforward engagement histories. Migrations with undocumented custom fields requiring API discovery, large engagement histories (over 200,000 activity records), or multiple Company-to-Contact relationship tiers move to four to eight weeks. The undocumented API schema is the primary timeline variable; we discover the schema in the first few days before extraction begins.

Adjacent paths

Related migrations to explore

Ready when you are

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