CRM migration
Field-level mapping, validation, and rollback between Rizer and Twenty CRM. We move data and schema; workflows are rebuilt natively in Twenty CRM.
Rizer
Source
Twenty CRM
Destination
Compatibility
7 of 11
objects map 1:1 between Rizer and Twenty CRM.
Complexity
BStandard
Timeline
2-4 weeks
Overview
Moving from Rizer to Twenty CRM is a structural migration from a dual-product influencer-marketing platform to a self-hostable open-source CRM. Rizer operates two separate products: Rizer Social (marketing CRM with 500-5000 API calls/month) and Rize (time-tracking at $20/seat/month). Both have independent login domains and no shared export API, so we scope two distinct export passes and do not assume a unified data dump. We map Rizer Contacts to Twenty People, preserve referral attribution as custom fields on People, resolve Rizer Companies to Twenty Companies, and flatten Rizer Deals into Twenty Opportunities with stage configuration. Workflow automation sequences do not migrate as code; we deliver a written inventory of every active Rizer Workflow with its trigger, conditions, and recommended Twenty replacement so your admin can rebuild them post-migration. Historical timestamps on contacts, deals, and referral windows migrate as custom fields.
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 Rizer 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.
Rizer
Contact
Twenty CRM
People
1:1Rizer Contact records map to Twenty People with standard fields (name, email, phone, address) preserved. Referral attribution source and attribution window fields from Rizer migrate as custom fields on People (e.g., referral_source__c, attribution_window_days__c). Rizer's lifecycle_stage property migrates as a custom picklist field if the customer relies on it for segmentation. We inspect raw field values during export because Rizer's Referrizer API does not enforce type constraints on read; date fields stored as strings and multi-select values stored as delimited text are normalized before write.
Rizer
Company
Twenty CRM
Company
1:1Rizer Companies map directly to Twenty Companies. The Rizer company association on Contact (the link between a Contact and their employer) resolves to a Twenty Company record before Contact import so that the relationship is satisfied at the moment of People insert. Industry tags and custom company properties become custom fields on the Twenty Company object.
Rizer
Deal
Twenty CRM
Opportunity
1:1Rizer Deals map to Twenty Opportunities. The Rizer dealstage property maps to a Twenty pipeline stage, which we configure in Settings before migration. Pipeline assignments in Rizer become Twenty Opportunity pipeline names. Closed-Won and Closed-Lost amounts, probability, and expected close date transfer to standard Opportunity fields. Deal custom properties (beyond the standard stage and amount fields) migrate as custom fields on Opportunity.
Rizer
Workflow
Twenty CRM
Workflow (not migrated as code)
lossyRizer Workflows are automated email sequences attached to Contact lifecycle stages with branching logic and delay rules. Twenty does not have a native sequence or workflow automation feature equivalent to Rizer's contact-nurture sequences. We do not migrate Workflows as code. We deliver a written inventory of every active Rizer Workflow documenting its trigger condition (e.g., callback_date reached, lifecycle_stage transitioned), delay rules, email content reference, and tagging actions. The customer's admin rebuilds these in a tool of their choice (Twilio Segment, ConvertKit, ActiveCampaign, or a custom n8n workflow) post-migration.
Rizer
Tag
Twenty CRM
Custom Field (multi-select) or Topic
lossyRizer tags applied to Contacts are flat string lists. We normalize these to a Twenty custom multi-select picklist field (tags__c) on People during migration. If the customer uses tags for content classification or campaign segmentation, we offer a Topics-based alternative where each Rizer tag becomes a Twenty Topic with TopicAssignment records. The customer selects the tag strategy during scoping.
Rizer
Custom Field (on Contact)
Twenty CRM
Custom Field (on People)
1:1Rizer Referrizer API custom field descriptors on Contacts migrate to Twenty People custom fields. We inspect raw values during export to infer data type because the Rizer API returns field metadata without enforcing type constraints. Date fields stored as strings, numeric fields stored as text, and delimited multi-select values are all normalized before write. Custom fields must exist in Twenty's Settings → Data Model before import; we create them during the pre-migration data model step.
Rizer
Referral Data
Twenty CRM
Custom fields on People
1:1Referral tracking sources and attribution windows stored on Rizer Contact records migrate as custom fields on Twenty People. The referral_source__c field carries the attribution channel (e.g., creator_mention, affiliate_link, social_post). The attribution_window_days__c field carries the configured conversion window. Attribution history spanning multiple fields becomes a JSON blob in a long-text field or individual fields per the customer's data model preference. Referral click counts and conversion counts migrate as numeric custom fields if present.
Rizer
Client (Rize time-tracking)
Twenty CRM
Company
1:1Rize Clients (from the separate time-tracking product at rize.io) map to Twenty Companies. This is a separate export scope from Rizer Social because the two products have separate login domains and no unified API. Clients from Rize include the client name and contact details; we treat them as company-level records in Twenty. Projects belonging to a Client link to the Company via a custom lookup field.
Rizer
Project (Rize time-tracking)
Twenty CRM
Opportunity or Custom Object
lossyRize Projects belong to Clients and contain Tasks. Twenty does not have a native Project object, so we evaluate one of two approaches during scoping: flatten Projects into Twenty Opportunities with a custom project_name__c field, or create a custom Project object in Twenty's data model. The choice depends on whether the customer wants time-tracking integration post-migration or just needs project context preserved as a label on records.
Rizer
Task (Rize time-tracking)
Twenty CRM
Task or Custom Object
lossyRize Tasks nested under Projects do not have a direct Twenty equivalent. Subtasks in Rize are a boolean or count field on a Task, not a separate object. We expand these into discrete Task records in Twenty if the standard Task object is sufficient, or into a custom Task object if the customer needs hierarchical project-task relationships. Rize time-tracking data is scoped separately from the Rizer Social migration because these are separate products.
Rizer
Team Member (Rizer)
Twenty CRM
Member
1:1Rizer user accounts map to Twenty Members. Role assignments (admin, manager, member) in Rizer map to Twenty's role-based access control settings. We resolve by email match. Any Rizer user without a matching Twenty Member invitation is held in a reconciliation queue for the customer's admin to provision before record import resumes. Rizer Social and Rize have separate user management; if both products are in scope, we handle member mapping twice.
| Rizer | Twenty CRM | Compatibility | |
|---|---|---|---|
| Contact | People1:1 | Fully supported | |
| Company | Company1:1 | Fully supported | |
| Deal | Opportunity1:1 | Fully supported | |
| Workflow | Workflow (not migrated as code)lossy | Fully supported | |
| Tag | Custom Field (multi-select) or Topiclossy | Fully supported | |
| Custom Field (on Contact) | Custom Field (on People)1:1 | Fully supported | |
| Referral Data | Custom fields on People1:1 | Mapping required | |
| Client (Rize time-tracking) | Company1:1 | Fully supported | |
| Project (Rize time-tracking) | Opportunity or Custom Objectlossy | Fully supported | |
| Task (Rize time-tracking) | Task or Custom Objectlossy | Fully supported | |
| Team Member (Rizer) | Member1: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.
Rizer gotchas
API call budget on Starter tier is migration-critical
Dual-product data model requires separate export scopes
Custom field data types are not validated at export time
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
Discovery and product scope identification
We audit the source Rizer Social portal across tier (Starter/Growth/Enterprise), custom properties, active workflows, and engagement volume. If the customer also uses Rize for time-tracking, we scope a parallel export pass from rize.io for Clients, Projects, and Tasks. The discovery output is a written migration scope distinguishing CRM data (Rizer Social) from billing/PM data (Rize), a list of custom fields requiring Twenty field creation, and a referral attribution field mapping plan.
Data model design and custom field creation in Twenty
We audit Rizer's custom field descriptors on Contacts, Companies, and Deals. For each custom field, we create an equivalent field in Twenty's Settings → Data Model with the correct type (text, number, date, multi-select picklist, checkbox). Referral attribution fields are created as custom fields on People. Tags are created as multi-select picklists with options matching the Rizer tag taxonomy. Pipeline stages from Rizer Deals are created as Opportunity stage values in Twenty. Schema is validated before any export begins.
CSV and API export from Rizer
We export data from Rizer using the documented CSV endpoints for Clients, Projects, Tasks, and Team Members, and the Referrizer API for Contacts, Companies, Deals, custom fields, and workflow associations. For customers on the Starter tier, we prefer CSV endpoints to conserve the 500-call/month API budget. Export is run in two passes: one for Rizer Social (CRM) and one for Rize (time-tracking). We flag any Contact with a recycled status so workflow associations are not orphaned during the move.
Data cleaning and type normalization
We inspect raw field values in the exported data. Date fields stored as strings are parsed and normalized to ISO 8601. Multi-select fields stored as comma-delimited text are split into array values for Twenty multi-select picklist writes. Numeric fields stored as text are validated and coerced to number type. Referral attribution source and window values are extracted from Contact records and mapped to the custom People fields created in Step 2. Duplicate records are flagged for the customer's review before import.
Production migration in dependency order
We run production migration into Twenty in record-dependency order: Companies (from Rizer Companies and Rize Clients) first, then People (with CompanyId resolved via name match), then Opportunities (with PeopleId and CompanyId resolved). Team members are invited as Twenty Members before import so that OwnerId references can be satisfied. Referral attribution fields are written on People during the same People import pass. Rize Projects and Tasks are imported last, either as Opportunities with a custom project_name__c field or as a custom Project object depending on the customer's chosen data model.
Cutover, validation, and Workflow rebuild handoff
We freeze Rizer writes during cutover and run a final delta migration of any records modified during the migration window. We validate record counts in Twenty against the source export, spot-check 20-30 records for field-level accuracy, and confirm that referral attribution fields are populated on People records. We deliver the Workflow inventory document to the customer's admin team for manual rebuild. We support a one-week hypercare window for reconciliation issues. We do not rebuild Rizer Workflows as code; that is handled by the customer's admin or a separate automation implementation partner.
Platform deep dives
Rizer
Source
Strengths
Weaknesses
Twenty CRM
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 2 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 Rizer and Twenty CRM.
Object compatibility
2 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
Rizer: 500 API calls/month on Starter; 5000 on Growth; Enterprise unlimited — exact per-second throttling not publicly documented.
Data volume sensitivity
Rizer 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 Rizer to Twenty CRM migration scoping. Not seeing yours? Book a call.
Walk through your Rizer 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 Rizer
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.