CRM migration
Field-level mapping, validation, and rollback between Real Estate 7 and Twenty CRM. We move data and schema; workflows are rebuilt natively in Twenty CRM.
Real Estate 7
Source
Twenty CRM
Destination
Compatibility
12 of 12
objects map 1:1 between Real Estate 7 and Twenty CRM.
Complexity
BStandard
Timeline
48–72 hours
Overview
Real Estate 7 bundles a WordPress CRM (CT Leads Pro) with property-listing functionality, designed for real estate brokerages managing leads through a property-centric lens. Twenty CRM is a modern open-source platform built on TypeScript, React, and PostgreSQL that positions itself as a Salesforce alternative with full API access and custom object flexibility. The core migration challenge is translating Real Estate 7's property-centric data model — where listings and lead scoring are tightly coupled to WordPress — into Twenty's relational People-Companies-Opportunities structure with custom objects for property data. We map Real Estate 7 contacts to Twenty People records, companies to Twenty Companies, and deals to Twenty Opportunities with pipeline stages preserved as stage values. Property-specific fields (listing status, property type, price, square footage) migrate to a Twenty custom object linked to both the People record and the associated Opportunity. Activity history — calls, emails, meeting notes, and tasks — transfers as Twenty Notes and Tasks with original timestamps and owner links intact. Lead scores from Real Estate 7 become a custom numeric field on the Twenty People object since Twenty lacks native behavioral scoring. Owner resolution happens by email match against Twenty Workspace Members. Workflows, sequences, and marketing automation do not migrate — these are destination-side logic that must be rebuilt using Twenty's workflow builder or third-party automation tools. We export workflow definitions from Real Estate 7 as a reference document for your rebuild. The migration uses Twenty's CSV import API with relation linking by email and domain, sequenced to satisfy foreign-key dependencies (Companies first, then People, then Opportunities, then custom objects).
Every standard and custom field arrives verified.
AI proposes the map; you confirm before any record moves.
Parent–child, lookups, and ownership stay linked.
Calls, emails, meetings — with original timestamps.
Documents, uploads, and inline notes move with the record.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Real Estate 7 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.
Real Estate 7
Contact / Lead
Twenty CRM
People
1:1Real Estate 7 contacts and leads map directly to Twenty People records. The contact's primary company link becomes a relation to a Twenty Companies record. We preserve the contact's original create date as a custom field since Twenty's createdAt is set at migration time. Email and phone are mapped directly. Owner resolution happens by email match to Twenty Workspace Members.
Real Estate 7
Company / Agency
Twenty CRM
Companies
1:1Real Estate 7 agency and brokerage company records map to Twenty Companies. Company name, domain (website), industry, employee count, and address fields map directly. If Real Estate 7 stores parent-child company hierarchies, we map those using Twenty's self-referential relation on the Companies object. Multi-contact companies in Real Estate 7 become one Twenty Companies record with multiple linked People records.
Real Estate 7
Deal / Property Listing Deal
Twenty CRM
Opportunities
1:1Real Estate 7 deals tied to property listings become Twenty Opportunities with a link to a property custom object. The deal name typically derives from the property address or listing reference. Deal amount maps to Opportunity amount. Pipeline stage from Real Estate 7 requires value mapping to Twenty's Opportunity stage pick-list values — we capture the original Real Estate 7 stage name as a custom field for reporting continuity.
Real Estate 7
Property Listing
Twenty CRM
Custom Object: Property
1:1Real Estate 7's property listing data (address, price, bedrooms, bathrooms, square footage, listing status, property type) migrates to a Twenty custom object named 'Property'. This object links to the People record (as the listing contact or buyer) and optionally to the associated Opportunity. We create the custom object definition in Twenty before migration and establish the relation fields during the import phase.
Real Estate 7
Lead Score
Twenty CRM
People (custom field)
1:1Real Estate 7's hot/warm/cold lead scoring migrates as a custom numeric field (Lead_Score__c) on the Twenty People object. If the source stores a numeric score (0-100), we preserve the raw number. If it uses categorical scoring, we preserve it as a custom select field with the original category values. This field is for reference — Twenty has no native behavioral scoring.
Real Estate 7
Task / Follow-up
Twenty CRM
Tasks
1:1Real Estate 7 tasks and follow-up reminders map directly to Twenty Tasks. Task title, due date, completion status, and assigned owner (resolved by email match) transfer intact. Tasks linked to specific contacts or deals in Real Estate 7 get linked to the corresponding People or Opportunity record in Twenty. Original create timestamps are preserved as a custom field.
Real Estate 7
Note / Call Note / Email Note
Twenty CRM
Notes
1:1Notes from Real Estate 7 — including call notes, email body content, and general record notes — migrate as Twenty Notes. Notes are linked to the parent record (People, Companies, or Opportunities) using Twenty's relation model. Original note timestamps and note author (owner) are preserved. Rich-text formatting is converted to plain text where necessary.
Real Estate 7
Activity History (calls, emails, meetings)
Twenty CRM
Notes + Tasks
1:1Real Estate 7 activity records (logged calls, sent emails, scheduled meetings) become Twenty Notes with a note type indicator and original timestamp. Meeting details include date and duration where available. Activity owner is resolved by email match to Twenty Workspace Members. We create a custom 'Activity_Type__c' field on Notes to distinguish call, email, and meeting records.
Real Estate 7
Attachment / File
Twenty CRM
Notes (with file attachment)
1:1Files attached to Real Estate 7 records — property images, contract documents, PDF reports — are downloaded and re-uploaded to Twenty Notes linked to the parent record. File size limits apply (Twenty's upload limit). Inline images in notes are extracted and stored as attachments. File metadata (original filename, upload date) is preserved as note content.
Real Estate 7
Pipeline Stage
Twenty CRM
Opportunities.StageName + Custom Stage History Field
1:1Real Estate 7 pipeline stages (e.g., 'New Lead', 'Showing Scheduled', 'Offer Made', 'Under Contract', 'Closed') map to Twenty Opportunity stage values. We perform value-by-value mapping — your Real Estate 7 stage names become Twenty stage pick-list values. Stage-enter timestamps from Real Estate 7 are preserved as custom datetime fields on each Opportunity for historical reporting.
Real Estate 7
User / Owner
Twenty CRM
WorkspaceMember
1:1Real Estate 7 users and deal owners are resolved by email match against Twenty Workspace Members. If a Real Estate 7 user has no matching Workspace Member email, their records are assigned to a fallback owner or flagged for manual assignment before migration. Owner history (who owned a deal at each stage) is preserved as custom fields on the Opportunity record.
Real Estate 7
Custom Fields (WordPress Custom Fields)
Twenty CRM
Custom Object Fields or People/Company/Opportunity Custom Fields
1:1Real Estate 7 WordPress custom fields (agent ID, listing source, referral channel, mortgage pre-approval amount) are audited before migration. Each custom field is mapped either to a corresponding custom field on the target Twenty object or to a custom field on the Property custom object. Field type transformation is applied as needed (e.g., text to number, date string to date field).
| Real Estate 7 | Twenty CRM | Compatibility | |
|---|---|---|---|
| Contact / Lead | People1:1 | Fully supported | |
| Company / Agency | Companies1:1 | Fully supported | |
| Deal / Property Listing Deal | Opportunities1:1 | Fully supported | |
| Property Listing | Custom Object: Property1:1 | Fully supported | |
| Lead Score | People (custom field)1:1 | Fully supported | |
| Task / Follow-up | Tasks1:1 | Fully supported | |
| Note / Call Note / Email Note | Notes1:1 | Fully supported | |
| Activity History (calls, emails, meetings) | Notes + Tasks1:1 | Fully supported | |
| Attachment / File | Notes (with file attachment)1:1 | Fully supported | |
| Pipeline Stage | Opportunities.StageName + Custom Stage History Field1:1 | Fully supported | |
| User / Owner | WorkspaceMember1:1 | Fully supported | |
| Custom Fields (WordPress Custom Fields) | Custom Object Fields or People/Company/Opportunity Custom Fields1:1 | Fully supported |
Gotchas + challenges
Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.
Real Estate 7 gotchas
No documented public API for data export
CRM access locked to yearly subscription tier
WordPress plugin state affects migration integrity
Follow Up Boss integration is one-directional sync
Twenty CRM gotchas
Import order is enforced and critical
Export limited to 20,000 records and visible columns only
Soft-deleted records count toward uniqueness and trigger restores
API rate limits cap at 200 req/min on Organization tier
No native email sequences — follow-up cadences require external tools
Pair-specific challenges
Migration approach
Audit Real Estate 7 data structure and active integrations
We export a full data inventory from your Real Estate 7 instance — contacts, companies, deals, property listings, tasks, notes, activity history, and custom fields. We document active WordPress integrations (IDX feeds, Follow Up Boss sync, contact form connections) and identify which Real Estate 7 workflows and sequences are in use. This audit produces the migration scope document: record counts by object, list of custom fields, pipeline stage names, and a decision checklist for integrations that require replacement.
Create Twenty workspace schema (custom objects, fields, relations)
Before any data moves, we create the Property custom object in Twenty with all required fields (price, type, bedrooms, bathrooms, square_footage, status). We set up custom fields on People for lead_score, source, and original_created_at. We configure Opportunity stage values to match your Real Estate 7 pipeline stages, creating each pick-list entry. Relation fields between Property, People, and Opportunities are defined so foreign-key links can resolve during CSV import. Your Twenty admin reviews and approves the schema before test migration.
Resolve owners and users by email match
Real Estate 7 users (agents, admins, team members) are matched against Twenty Workspace Members by email address. We generate a match report: users with a clear email match in Twenty are mapped directly. Users with no match are flagged as 'unresolved' — your team either creates their Twenty account before migration or assigns their records to a fallback Workspace Member. No record lands in Twenty without a resolved owner assignment.
Run sample migration with field-level diff
A representative slice — typically 100–500 records spanning contacts, companies, deals, property listings, and activities — migrates first. We generate a field-level diff comparing source values to destination field values in Twenty, so you can verify that lead_score migrated correctly, pipeline stages mapped to the right Opportunity stage values, and property custom object fields populated from the right source columns. You sign off on the sample before the full migration commits.
Execute full migration with delta-pickup window
Full migration runs against Twenty using CSV import sequenced by foreign-key dependency: Companies first (the 'one' side of relationships), then People (linked to Companies via companyId), then Opportunities (linked to Companies and People), then Property custom object records, then Notes and Tasks. A delta-pickup window (24–48 hours) captures any records created or modified in Real Estate 7 during the cutover period. We audit every import operation, and one-click rollback to the pre-migration state is available if reconciliation finds data integrity issues.
Platform deep dives
Real Estate 7
Source
Strengths
Weaknesses
Twenty CRM
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 3 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Real Estate 7 and Twenty CRM.
Object compatibility
3 of 8 objects need a mapping; the rest are 1:1.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
8-object category — typical timelines run 2–7 days end-to-end.
API constraints
Real Estate 7: Not publicly documented.
Data volume sensitivity
Real Estate 7 doesn't expose a bulk API — REST + parallelization used for high-volume runs.
Estimator
Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.
Step 1
Pick a category, then your source and destination platforms.
Category
FAQ
Answers to the questions buyers ask most during Real Estate 7 to Twenty CRM migration scoping. Not seeing yours? Book a call.
Walk through your Real Estate 7 to Twenty CRM migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Real Estate 7
Other ways to arrive at Twenty CRM
Ready when you are
Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.