CRM migration

Migrate from Funnel Leasing to Twenty CRM

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

Funnel Leasing logo

Funnel Leasing

Source

Twenty CRM

Destination

Twenty CRM logo

Compatibility

92%

11 of 12

objects map 1:1 between Funnel Leasing and Twenty CRM.

Complexity

BStandard

Timeline

48–72 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Funnel Leasing is a renter-centric CRM built for multifamily operators — its data model centers on prospects, rental applications, lease agreements, and property associations. When operators move to Twenty CRM, they are moving from a domain-specific leasing platform to a general-purpose open-source CRM with a People–Companies–Opportunities model. The migration carries everything Funnel stores natively — prospects, companies, deals, activities, notes, and custom properties — into Twenty's object graph. The key translation points are mapping Funnel prospects to Twenty People, Funnel companies to Twenty Companies, and Funnel deal pipelines to Twenty Opportunities with stage mapping per pipeline. Activity history (calls, emails, meetings) migrates as Tasks and Notes with original timestamps and owner assignments preserved. Custom properties from Funnel require pre-creation of custom fields in Twenty's Settings → Data Model before import. We use Funnel's REST API to export data in structured batches, then push it into Twenty via CSV import or GraphQL API depending on record count. Workflows, automations, and AI-leasing logic do not migrate and must be rebuilt in Twenty's workflow builder.

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

Funnel Leasing logo

Funnel Leasing

What's pushing teams away

  • Enterprise pricing lacks transparency, requiring a sales conversation with no published pricing for the Full Funnel tier, making budget forecasting difficult for large portfolios.
  • Third-party BI integrations like Tableau and Snowflake are not included in base pricing and add significant cost, frustrating data teams that need native analytics.
  • Operators with highly differentiated property types or small portfolios report that the centralized model works best for uniform mid-to-large portfolios and can be overkill for niche operators.
  • Support model changes over time have frustrated some customers who report reduced support access compared to earlier pricing tiers, particularly for mid-market accounts.

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

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

Funnel Leasing

Prospect

maps to

Twenty CRM

People

1:1
Fully supported

Funnel prospects map directly to Twenty People. Each prospect's name, email, phone, and contact details migrate as standard People fields. Owner resolution happens by email match against Twenty workspace members — unmatched owners flag before migration runs so you can invite users first.

Funnel Leasing

Prospect (Funnel stage: Applicant)

maps to

Twenty CRM

People + Opportunity

many:1
Fully supported

Funnel prospects who have submitted a rental application get a companion Twenty Opportunity created automatically. The Opportunity links to the People record and carries the deal name, amount (monthly rent), and Funnel pipeline stage as the initial Opportunity stage in Twenty.

Funnel Leasing

Company

maps to

Twenty CRM

Companies

1:1
Fully supported

Funnel company records represent property management companies, landlords, or other organizations in the Funnel system. These records map directly to Twenty Companies with name, website, industry, phone, and address fields migrating as standard Company fields. Funnel's parent-company hierarchy — where one company can be the parent of other companies — translates to Twenty's Parent Company link on the Companies object, preserving organizational structure in the new CRM.

Funnel Leasing

Property

maps to

Twenty CRM

Custom Object (Property) or Companies + custom fields

1:1
Fully supported

Funnel's property entity (apartment buildings, communities) has no native equivalent in Twenty's standard schema. We create a Property custom object in Twenty with fields for address, unit count, property type, and a relation to the parent Company. If your team prefers to keep property data embedded, we use Company custom fields instead.

Funnel Leasing

Deal (Leasing Pipeline)

maps to

Twenty CRM

Opportunity

1:1
Fully supported

Funnel deal pipelines map to Twenty Opportunities. Each pipeline stage in Funnel (Inquiry, Tour, Application, Lease Signed) becomes a Twenty Opportunity stage value. The Funnel deal amount — typically the monthly rent or lease value — migrates as the Opportunity amount. Stage-entered timestamps are preserved as custom datetime fields for reporting continuity.

Funnel Leasing

Lease

maps to

Twenty CRM

Custom Object (Lease) or Opportunity extended

1:1
Fully supported

Funnel's lease agreements have start date, end date, monthly payment, and security deposit — none of which map to Twenty's standard Opportunity fields. We create a Lease custom object in Twenty with lease start, lease end, monthly rent, deposit amount, and status pick-list (Active, Expired, Renewal Pending), linked to the People (tenant) and Company (property) records.

Funnel Leasing

Activity (Call, Email, Meeting, Text)

maps to

Twenty CRM

Task

1:1
Fully supported

Funnel's omnichannel activity log — calls, emails, meetings, and text messages — maps to Twenty Tasks. The Task type field carries the original channel (Call, Email, Meeting, SMS). Original timestamps, owners, and parent-record links (People, Company, or Opportunity) are preserved on the Task record.

Funnel Leasing

Note / Meeting Summary

maps to

Twenty CRM

Note

1:1
Fully supported

Funnel notes attached to prospect, company, deal, or lease records migrate as Twenty Notes with all content preserved. Rich-text formatting — bold, italic, bullet points, tables — converts to Twenty's supported formatting. Notes that contain lease-specific data like terms, rent amounts, or property details get those values embedded as plain text within the Note body, ensuring all contextual information from Funnel carries over into Twenty's Notes object intact.

Funnel Leasing

Custom Property (Prospect)

maps to

Twenty CRM

Custom Field on People

1:1
Fully supported

Funnel's custom prospect properties (routing preference, source channel, referral code) become custom fields on the Twenty People object. Each custom field must be created in Twenty's Settings → Data Model before the CSV import runs — the migration plan surfaces all custom property names and their data types for pre-creation.

Funnel Leasing

Owner / Team Member

maps to

Twenty CRM

Workspace Member

1:1
Fully supported

Funnel owners assigned to prospects or deals resolve by email match against Twenty workspace members. Funnel's team structure (regional managers, leasing agents) maps to Twenty Workspace Members. If a Funnel owner has no matching Twenty user, records are assigned to a fallback owner you designate before migration.

Funnel Leasing

Attachment / Document

maps to

Twenty CRM

Note or Custom Field (URL)

1:1
Fully supported

Funnel attachments (rental applications, ID documents, lease PDFs) have no native storage equivalent in Twenty's base import. We download files to a managed storage location and store a link in a custom URL field on the related People or Lease record. You can migrate the files separately into your preferred document storage.

Funnel Leasing

Workflow / Automation

maps to

Twenty CRM

Workflow

1:1
Fully supported

Funnel's AI leasing workflows, follow-up sequences, and chatbot logic do not have a migration path. We export the workflow definitions (trigger conditions, action steps, timing rules) as a reference JSON file so your Twenty admin can rebuild equivalent automations in Twenty's workflow builder.

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.

Funnel Leasing logo

Funnel Leasing gotchas

Medium

Funnel is not a party to rental transactions

Medium

PMS integration fees are bundled into per-unit pricing

High

No publicly documented bulk export API for large portfolios

Low

AI-generated fields are proprietary and may not map directly to destination fields

Medium

ResApp resident portal accounts are not migratable

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

  • Funnel Leasing prospect stages map to a flat Twenty Opportunities stage pick-list

    Funnel's leasing pipeline has named stages — Inquiry, Tour Scheduled, Tour Completed, Application Submitted, Lease Sent, Lease Signed — each tied to specific probability weights and routing rules. Twenty's Opportunities use a single workspace-wide stage pick-list. When Funnel has multiple pipelines (e.g., Primary Leasing vs. Renewal Pipeline), all their stage names compete for the same Twenty stage pick-list. FlitStack AI resolves this by creating a custom pipeline__c select field on Opportunities so each Funnel pipeline stage maps to its own labeled value within the same stage field. You will need to pre-create the stage pick-list values in Twenty before data lands.

  • Funnel's omnichannel activity log requires disambiguation into Twenty's Task types

    Funnel Leasing logs calls, emails, texts, and chatbot interactions on a unified activity timeline per prospect. Twenty separates these into Tasks (calls, emails) and Notes (meeting summaries). There is no native SMS-specific task type in Twenty's base Task object — SMS logs are stored as Tasks with the message body in the body field and a Type annotation. We surface this distinction in the migration plan and let you choose whether to tag SMS tasks with a custom type__c field or collapse them into Notes. Chatbot interactions (Funnel's AI assistant logs) have no Twenty equivalent and are exported as a reference JSON file.

  • Property and Lease custom objects require Twenty pre-configuration before import

    Twenty's CSV import creates records but not fields — the schema must exist before data lands. Funnel's Property and Lease entities have no standard Twenty equivalents, so the migration plan includes a custom object creation checklist: create the Property and Lease objects in Settings → Data Model, add all required fields with correct types, and configure the relation fields (companyId, personId) before the migration runs. If you skip this step, the import will fail on those records. We deliver the checklist with exact field names, types, and pick-list values from your Funnel configuration.

  • Funnel's per-unit pricing context is lost — Twenty has no unit-level billing model

    Funnel Leasing's pricing is tied to the number of units under management ($2.05–$3.70/unit/month). When you move to Twenty, that billing context disappears — Twenty charges per seat, not per unit. We preserve the original Funnel unit count as a custom field on the relevant Company or Property record, but the financial tracking model (units × rate) has to be rebuilt in Twenty as a custom report or external billing tool. If your team uses Funnel's AI leasing reports tied to unit economics, those reports do not migrate.

  • Twenty's API rate limits differ by cloud plan — bulk imports require plan awareness

    Twenty's cloud tiers impose API call limits: Pro plan allows 100 API calls per minute, Organization plan allows 200 per minute. Self-hosted Twenty has no rate limit. For migrations exceeding 10,000 records, FlitStack AI switches from API-based insert to CSV import (which bypasses the per-minute limit) to avoid throttling. If you are on the Pro plan and need API-based delta-sync after migration, we implement exponential backoff and respect the 100 req/min ceiling. Enterprise-complex migrations on the Pro plan may require a pre-migration upgrade to Organization.

Migration approach

Six steps for a successful Funnel Leasing to Twenty CRM data migration

  1. Audit Funnel data and generate schema map

    We connect to Funnel Leasing's API using your credentials and export a full schema inventory: all prospect fields, company fields, deal pipelines, stage values, custom properties, activity types, and attachment metadata. We cross-reference this against Twenty's standard field list to identify which objects need custom field pre-creation and which map directly. The audit produces a field-level mapping document and a custom object creation checklist with exact field names and types that your Twenty admin runs in Settings → Data Model before migration day.

  2. Pre-create Twenty custom fields and custom objects

    Before any data moves, your Twenty admin creates the custom fields and objects identified in the audit — typically a Prospect_Stage__c select, source__c select, Pipeline__c select, lease start/end/amount fields on a Lease custom object, and property fields on a Property custom object. FlitStack AI delivers a step-by-step checklist with the exact field names, data types, and pick-list options from your Funnel configuration. We also invite all Funnel owners to Twenty by email so owner resolution works on the first pass.

  3. Resolve owners and validate relation order

    Funnel owner IDs resolve by email match against Twenty Workspace Members. Any Funnel owner without a matching Twenty user is flagged and queued for fallback assignment to a designated admin user. We also validate the import order: Companies first (to satisfy foreign keys), then People (linked to Companies via companyId), then Opportunities (linked to Companies and People), then Tasks, Notes, and custom objects. Circular company hierarchies are flagged and resolved by parent-first ordering.

  4. Run sample migration with field-level diff

    A representative slice — typically 200–500 records spanning a mix of prospect stages, deal pipeline stages, activity types, and custom property values — migrates first. We generate a field-level diff report comparing the source Funnel values against the destination Twenty values so you can verify stage mapping, custom property translation, and owner resolution before the full run commits. You approve the sample before we proceed to the full migration.

  5. Execute full migration with delta-pickup cutover window

    The full migration runs against Twenty using CSV import for bulk record creation. A 24–48 hour delta-pickup window then captures any Funnel records modified or created during the cutover — typically new prospect inquiries or stage changes that happened while the migration ran. Audit logs document every record operation. If reconciliation finds unexpected gaps, one-click rollback reverts the migration so you can investigate and re-run.

Platform deep dives

Context on both ends of the pair

Funnel Leasing logo

Funnel Leasing

Source

Strengths

  • AI-powered leasing automation embedded natively without requiring separate AI tool subscriptions
  • Transparent per-unit pricing model with published rates on Essentials and Intelligence tiers
  • Renter-centric data architecture gives a single view of each prospect and resident across the entire portfolio
  • Omnichannel communication logging unifies emails, calls, texts, and chats into one contact profile
  • Claims 70% faster approval-to-lease distribution through integrated online leasing workflows

Weaknesses

  • Enterprise pricing requires a sales conversation with no published Full Funnel tier rates
  • Third-party BI tool integrations (Tableau, Snowflake) incur additional costs not included in base pricing
  • Centralized portfolio-wide model may be unnecessarily complex for small or niche portfolios
  • API documentation is not publicly indexed at scale, requiring developer account access for schema reference
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 Funnel Leasing 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

    Funnel Leasing: Not publicly documented..

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

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

Book a free 30 minute consultation

Most Funnel Leasing to Twenty CRM migrations complete in 48–72 hours of clock time for setups under 25,000 records. Larger portfolios with custom Property and Lease objects, multiple pipelines, or 25,000+ records extend to 5–10 days. The longest planning step is pre-creating Twenty's custom fields and custom objects in Settings → Data Model before data lands — we deliver that checklist on day one so your admin can complete it in parallel.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Funnel Leasing.
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