CRM migration

Migrate from Rechat to Twenty CRM

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

Rechat logo

Rechat

Source

Twenty CRM

Destination

Twenty CRM logo

Compatibility

100%

10 of 10

objects map 1:1 between Rechat and Twenty CRM.

Complexity

BStandard

Timeline

48–72 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Rechat is a real-estate-vertical CRM built for brokerages and agents — it excels at MLS integration, transaction workflows, and listing-centric contact management. When teams outgrow its vertical scope or want data ownership without per-agent licensing, they migrate to Twenty CRM: an open-source, general-purpose CRM with People, Companies, Opportunities, Notes, Tasks, and a workflow builder running on PostgreSQL. FlitStack AI extracts Rechat data via its REST API (contacts, companies, deals, tasks, notes, attachments, and any custom fields). We map each object to its Twenty CRM equivalent, resolve owners by email match against Twenty workspace members, and preserve original create/update timestamps as custom datetime fields. Real-estate-specific custom fields (MLS numbers, property types, listing statuses) transfer as Twenty custom fields — either as text fields or pick-lists depending on the data shape. What does NOT migrate: Rechat's MLS live-sync integration, automated workflows, real estate transaction templates, and email/notification sequences. These are platform-native constructs with no Twenty equivalent and must be rebuilt. FlitStack provides a workflow audit export from Rechat so your admin has a rebuild reference. The migration uses Twenty's CSV import (up to 20,000 records per import run) and REST API for larger volumes — sequenced so Companies load before People, and People before Opportunities to preserve foreign-key relationships.

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

Rechat logo

Rechat

What's pushing teams away

  • Agents without Google or Outlook accounts report being unable to access full automation features, making Rechat feel incomplete as a standalone CRM.
  • A June 2025 Heroku/Salesforce outage knocked Rechat offline for an extended period, raising concerns about infrastructure dependency on a third-party cloud provider.
  • Users moving to platforms with published API documentation find Rechat's undocumented endpoints limiting when attempting programmatic data exports.
  • Rechat's AI assistant Lucy is tightly integrated, making workflows harder to replicate when agents switch to platforms with different automation paradigms.
  • Brokers seeking simpler per-seat pricing without tier-gated features find Rechat's enterprise-focused model harder to justify for small teams.

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

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

Rechat

Contact / People

maps to

Twenty CRM

People

1:1
Fully supported

Rechat contacts map directly to Twenty People records. Name, email, phone, job title, address, and custom fields transfer. Primary company association migrates as a companyId lookup — Rechat contacts with no company link attach to a placeholder company record in Twenty so the relationship field is never null.

Rechat

Company

maps to

Twenty CRM

Companies

1:1
Fully supported

Rechat company records map 1:1 to Twenty Companies. Domain, industry, employee count, annual revenue, and address fields transfer. Parent-child company hierarchies (Rechat's parent company link) map to Twenty's parent company relation using the same foreign-key pattern — parent companies migrate first so child records resolve correctly.

Rechat

Deal / Transaction

maps to

Twenty CRM

Opportunities

1:1
Fully supported

Rechat deals map to Twenty Opportunities. Deal name, amount, stage, close date, and owner transfer. Rechat deal stage values (e.g., 'Active', 'Under Contract', 'Closed') map to Twenty Opportunity stage pick-list values — your admin defines the Twenty stage pipeline before migration so the mapping is pre-agreed.

Rechat

Task

maps to

Twenty CRM

Tasks

1:1
Fully supported

Rechat tasks (reminders, to-dos, follow-up items) map to Twenty Tasks with original due dates, assignees, and completion status preserved. Task body text transfers as the Task description. Tasks linked to specific contacts or deals carry the parent record ID in Twenty's relation fields.

Rechat

Note

maps to

Twenty CRM

Notes

1:1
Fully supported

Rechat notes map to Twenty Notes. Rich-text formatting is converted to plain text for Twenty's note model. Notes linked to contacts, companies, or deals carry the appropriate relation in Twenty so they appear in context on the related record. Original note timestamps and creator information are preserved as metadata fields on each Twenty Note, ensuring audit trail continuity.

Rechat

Attachment / File

maps to

Twenty CRM

File storage (re-upload)

1:1
Fully supported

Rechat file attachments on contacts, companies, and deals are downloaded and re-uploaded to Twenty's file storage. File names and original upload dates are preserved as metadata. Inline images embedded in notes are extracted and rehosted as separate file attachments linked to the parent note.

Rechat

User / Agent / Owner

maps to

Twenty CRM

Workspace Members

1:1
Fully supported

Rechat agent and owner records map to Twenty Workspace Members by email address match. Rechat owner ID on a deal or contact resolves to the matching Twenty user; unmatched owners are flagged before migration so you can invite them to Twenty first or assign their records to a fallback user.

Rechat

Custom Field (MLS Number, Property Type, Listing Status, etc.)

maps to

Twenty CRM

Custom Field on People / Companies / Opportunities

1:1
Fully supported

Rechat custom fields — including real-estate-specific fields like MLS listing number, property type, listing status, and transaction type — require custom field creation in Twenty before migration. FlitStack creates the fields in Twenty's data model (Settings > Data Model), defines the field type (text, select, multi-select, number, date), and maps values during the migration run. Pick-list fields require a value-by-value map if the source uses a constrained value set.

Rechat

Activity / Engagement (call, email, meeting)

maps to

Twenty CRM

Task / Event

1:1
Fully supported

Rechat activity records (logged calls, emails, meetings) map to Twenty Tasks. Call activities become Tasks with Type='Call'; email activities become Tasks with Type='Email'; meeting records become Tasks with the original date preserved. Rechat's activity timestamps and owner assignments transfer as Task fields. Note: Rechat retrieves email body content live from the connected Gmail/Outlook account — the migration captures metadata only, consistent with Rechat's documented behavior.

Rechat

Custom Object (if any Enterprise custom objects exist in Rechat)

maps to

Twenty CRM

Custom Object in Twenty (Professional plan: up to 10; Organization: unlimited)

1:1
Fully supported

Rechat Enterprise custom objects migrate to Twenty custom objects. Custom object relationships that use a junction-table pattern in Rechat require a junction object in Twenty if the relationship is many-to-many — we surface this in the pre-migration schema plan and your admin confirms the relationship model before data loads.

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.

Rechat logo

Rechat gotchas

High

Heroku/Salesforce outage risk impacts migration timing

High

Email bodies are never stored in Rechat

Medium

Flows automations are not exportable via API

Medium

Lucy AI assistant history is not accessible

Low

Contact export produces flat Excel, not relational data

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

  • Real estate custom fields have no native Twenty CRM equivalent and require upfront schema design

    Rechat's real estate custom fields — MLS listing number, property type, listing status, transaction type, and brokerage-specific pick-lists — are not matched by any native Twenty CRM field. These must be modeled as Twenty custom fields (Settings > Data Model) before data lands. The mapping is straightforward but requires your Twenty admin to pre-create the fields, decide on field types (text, select, multi-select), and define the stage pipeline so deal stage mapping is consistent. Skipping this step means Rechat custom field data lands as orphaned records or gets dropped during the import validation step. FlitStack delivers a custom-field creation checklist as part of the pre-migration plan so the schema is ready before the first CSV is uploaded.

  • Twenty's workflow builder has trigger-field specificity limitations that affect how automations can be rebuilt

    Rechat's Flows automation engine supports touch reminders, date-triggered follow-ups, and conditional logic scoped to specific events. Twenty's workflow builder uses a trigger/action model where listening to 'any field update' on a record and updating fields on the same record can create a recursive loop — this is a documented Twenty community issue (GitHub PR #17858 addresses a specific version). Teams migrating complex Rechat flows that touch multiple fields on a single record need to review those automations in Twenty's workflow builder before assuming feature parity. We provide a Rechat workflow audit export so your admin has the original logic documented for a faithful rebuild.

  • Twenty's CSV import caps at 20,000 records per run — larger migrations require API calls

    Twenty's CSV import function supports up to 20,000 records per import run (documented in Twenty's Data Migration guide). Rechat migrations with more than 20,000 contacts, companies, or deals require chunked CSV files or the Twenty REST API. The API rate limits are 100 calls per minute on Pro and 200 calls per minute on Organization plan — FlitStack handles chunking and rate-limit-aware API calls automatically, but the migration timeline for large datasets may extend beyond the initial estimate if the source dataset is heavily fragmented. We surface record counts during the pre-migration audit so the chunking strategy is set before the migration runs.

  • Rechat's email body is not stored on Rechat's servers — only metadata migrates for email activities

    Rechat's FAQ explicitly states that email body content is retrieved live from the connected Gmail or Outlook account and never saved on Rechat servers. The migration can only extract Rechat's email activity metadata (subject, sender, recipient, timestamp). Full email content remains in the source email account — if agents disconnect their Gmail/Outlook from Rechat or change employers, the email context in Rechat becomes inaccessible. Twenty's email integration (SMTP or Gmail connector) is separate from Rechat's sync; the migration does not re-establish email connections. Teams that rely on email body content stored in Rechat should export and archive it separately before the migration cutover.

  • Rechat MLS live-sync and transaction template features do not transfer — MLS integration must be rebuilt

    Rechat's MLS integration provides live listing data sync and transaction template automation for real estate workflows. Twenty CRM has no native MLS connector — this feature has no equivalent in Twenty's standard data model. Listing data stored in Rechat as custom fields migrates as static data (the last-synced values), but the live MLS refresh stops when Rechat is decommissioned. If your team relies on MLS-triggered automations (e.g., listing status changes that update deal stage), those sequences must be rebuilt in Twenty's workflow builder or handled via a separate MLS data connector. FlitStack surfaces every MLS-related custom field during the audit so your admin knows exactly what needs a replacement integration.

Migration approach

Six steps for a successful Rechat to Twenty CRM data migration

  1. Audit Rechat data and plan Twenty schema

    FlitStack pulls a full inventory of every Rechat object (contacts, companies, deals, tasks, notes, attachments, custom fields, and custom objects) via the Rechat API. We generate a schema audit report that identifies all custom field names, types, pick-list values, and any MLS-related fields. Based on this inventory, we deliver a Twenty schema setup checklist: which custom fields to create in Twenty's data model (with field types and pick-list options), how many custom objects are needed, and what the Opportunity stage pipeline should look like. Your Twenty admin creates the schema before the migration sample run so field validation passes on the first attempt.

  2. Sequence Companies, then People, then Opportunities for foreign-key integrity

    Twenty's import order requirement is strict: Companies must exist before People (people link to a companyId), and People must exist before Opportunities (opportunities link to a personId). FlitStack sequences the migration export so Companies load first into Twenty via CSV import or API, People second with their companyId lookups resolved, then Opportunities with both companyId and personId resolved. Any Rechat contact without a primary company gets assigned to a default 'Unassigned Company' placeholder in Twenty so the foreign-key constraint never fails. Owner assignments resolve by email match against Twenty workspace members — unmatched owners are flagged and held for admin resolution before the opportunity batch runs.

  3. Run sample migration with field-level diff

    A representative slice of 100–500 records migrates first — spanning contacts, companies, deals, a task, a note, and at least one record with custom fields populated. FlitStack generates a field-level diff showing source value versus destination value for every mapped field so you can verify that Rechat MLS numbers, property types, listing statuses, and custom pick-list values appear correctly in Twenty. Owner resolution is verified; any record landing without a Twenty owner is flagged. You approve the sample diff before the full migration commits. This step typically catches field type mismatches (text vs. pick-list) before hundreds of records are at risk.

  4. Execute full migration with delta-pickup window

    The full dataset migrates using the approved field mapping. A delta-pickup window (24–48 hours after the initial load) captures any Rechat records modified or created during the cutover — new contacts added by agents, deal stage changes, or tasks logged while the migration runs. FlitStack uses scoped read access on Rechat during this period; your team keeps working in Rechat uninterrupted. After the delta window closes, a final reconciliation report compares record counts by object type and flags any discrepancies. Audit log captures every insert, update, and skip operation.

  5. Deliver migration manifest, reconciliation report, and workflow rebuild reference

    Post-migration deliverables include: a full migration manifest listing every record migrated, the destination Twenty ID for each, and any records skipped with a reason; a field-level reconciliation summary showing that all mapped fields transferred correctly; and a Rechat workflow audit export documenting every active Flow, sequence, and automation definition in a structured format your Twenty admin can use as a rebuild reference for the workflow builder. FlitStack remains available for a 30-day post-migration review window in case reconciliation reveals gaps that need a targeted re-migration of specific record batches.

Platform deep dives

Context on both ends of the pair

Rechat logo

Rechat

Source

Strengths

  • All-in-one platform replacing separate CRM, marketing suite, and listing tools with one interface and one login.
  • Two-way real-time sync with Google and Outlook for contacts, calendar, and email metadata without third-party connectors.
  • Deep MLS integration enables agents to market listings, pull data for clients, and track opens and clicks directly from the platform.
  • AI assistant Lucy handles routine automations, freeing agents to focus on closings rather than administrative tasks.
  • Built by brokers who ran one of Canada's largest online brokerages, addressing real pain points around tool fragmentation.

Weaknesses

  • Pricing is not publicly published, making it difficult to compare costs before a sales conversation.
  • API documentation is sparse and undocumented endpoints make programmatic migration challenging without custom discovery work.
  • Platform runs on Heroku/Salesforce infrastructure, adding third-party dependency risk as demonstrated by the June 2025 outage.
  • Email body content is not stored — only metadata — so migrating email context requires additional handling or accepting data loss.
  • Full functionality requires Google or Outlook connection, limiting use for teams on other email platforms.
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 Rechat 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

    Rechat: Not publicly documented.

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

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

Book a free 30 minute consultation

Most Rechat-to-Twenty migrations complete in 48–72 hours for under 50,000 total records. Larger setups with 500,000+ records or dozens of real-estate-specific custom fields extend to 5–7 days. The longest planning step is pre-creating the Twenty custom fields (MLS numbers, property types, listing status pick-lists) so the import validation passes on the first run. The data migration itself — contacts, companies, deals, tasks, notes, and attachments — runs as a sequenced CSV or API batch once the schema is confirmed.

Adjacent paths

Related migrations to explore

Ready when you are

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