CRM migration

Migrate from BlinQ to Twenty CRM

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

BlinQ logo

BlinQ

Source

Twenty CRM

Destination

Twenty CRM logo

Compatibility

100%

12 of 12

objects map 1:1 between BlinQ and Twenty CRM.

Complexity

BStandard

Timeline

48–72 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Blinq is a digital business card management platform with native CRM integrations — it stores card-holder contacts, tags, meeting notes, and card-sharing metadata, but does not itself offer deal pipelines, native workflows, or a full contact-activity model. Twenty CRM is an open-source platform with standard objects for People, Companies, Opportunities, Notes, and Tasks, supporting unlimited custom fields and self-hosting. The migration moves Blinq card-holder profiles into Twenty People records, preserves tags and meeting context in custom fields and Notes, and links each person to a primary company using email or domain matching. Because Blinq has no native opportunity, task, or workflow system, those areas are built fresh in Twenty. FlitStack AI uses Blinq's REST API for export, sequences the import into Twenty's CSV/Bulk API in dependency order (Companies → People → custom objects), runs field-level validation before committing, and captures a delta window for any cards created during cutover. The process includes comprehensive data audit, custom field creation in Twenty's Settings → Data Model, user provisioning, sample migration with field-level diff, and full production run with deduplication across file chunks when record counts exceed Twenty's 20,000-row ceiling.

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

BlinQ logo

BlinQ

What's pushing teams away

  • Credit system charges $5 per badge scan and $5 per CRM sync, making high-volume event usage unpredictable and costly at scale.
  • Recipients receive solicitation emails after being scanned, which some users report as intrusive and damaging to relationship-building.
  • Power users find the platform's depth plateaus once it becomes central to their workflow—automation, integrations, and analytics feel limited for heavy daily reliance.
  • Analytics are paywalled on all tiers, so teams cannot access basic connection reporting without an additional subscription.
  • No documented public API or bulk export endpoint means data portability relies on CRM sync workarounds or manual downloads.

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

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

BlinQ

Card / Contact

maps to

Twenty CRM

People

1:1
Fully supported

Blinq card-holder profiles map directly to Twenty People records with field-for-field translation. First name, last name, email, phone, job title, and address fields migrate directly. Blinq's card-sharing metadata (shares, views) and tag data are preserved in custom fields on the People record to maintain lead-scoring context and segmentation capability in Twenty's environment.

BlinQ

Company / Organization

maps to

Twenty CRM

Companies

1:1
Fully supported

Blinq stores associated company names and domains on card profiles. These map to Twenty Companies records. The Blinq domain field maps to the Twenty Website field. Companies are migrated first so People records can reference them via companyId during import.

BlinQ

Primary Company

maps to

Twenty CRM

People → companyId (relation)

1:1
Fully supported

Blinq allows multiple associated companies per contact (N:N model). Twenty People records support a single primary companyId relation. FlitStack resolves the primary company using the most-recently-associated company or a specified priority rule, then surfaces additional associations as a custom field for reference.

BlinQ

Tag / Qualifier

maps to

Twenty CRM

Custom field on People

1:1
Fully supported

Blinq tags and qualifiers (e.g., 'Event Attendee', 'Warm Lead', 'VIP') have no native equivalent in Twenty. We create a custom multi-select or text field (Tags__c) on the People object and populate it with the Blinq tag list, preserving the original taxonomy for filtering and segmentation.

BlinQ

Meeting Record / Meeting Note

maps to

Twenty CRM

Notes

1:1
Fully supported

Blinq meeting records with titles, dates, and notes map to Twenty Notes objects. Each Note is linked to the corresponding People record via the Note's relation field. Original meeting dates and titles are preserved as Note metadata fields so activity timelines remain accurate after migration.

BlinQ

Meeting Count / Interaction Count

maps to

Twenty CRM

Custom field on People

1:1
Fully supported

Blinq tracks how many times two contacts have met or interacted. Twenty has no native meeting-count field. We migrate this as a custom integer field (Meetings_Count__c) on the People object, giving sales reps the same relationship-depth signal they had in Blinq.

BlinQ

Social Links (LinkedIn, Twitter, etc.)

maps to

Twenty CRM

Custom fields on People

1:1
Fully supported

Blinq card profiles include social media URLs (LinkedIn, Twitter, Instagram) as card fields. Twenty's People object has a standard Links field. For additional social links beyond the standard slots, we create custom URL fields (LinkedIn_URL__c, Twitter_URL__c) on the People object.

BlinQ

Card Share Count / View Count

maps to

Twenty CRM

Custom field on People

1:1
Fully supported

Blinq tracks how many times a card has been shared or viewed. These are engagement signals that sales teams used to prioritize warm leads. We migrate these as custom integer fields (Card_Shares__c, Card_Views__c) on the People object for reporting continuity in Twenty.

BlinQ

External CRM Sync Metadata

maps to

Twenty CRM

Custom field on People

1:1
Fully supported

Blinq stores metadata about which external CRM a contact synced to and when. If Blinq contacts were previously synced to Salesforce or HubSpot, we preserve that sync history as a custom text field (CRM_Sync_History__c) on the People record so teams know which contacts were already enriched.

BlinQ

Workflow / Automation

maps to

Twenty CRM

None

1:1
Fully supported

Blinq has no native workflow or automation engine. All automation lives in Zapier or similar third-party tools connecting Blinq to other CRMs. These integrations must be rebuilt as Twenty webhook triggers and Zapier/Make connections using Twenty's API. No Blinq-native automation data needs migration.

BlinQ

Credit / Billing Record

maps to

Twenty CRM

Custom field on People

1:1
Fully supported

Blinq's credit-based billing (shares, scans, sync counts) is a platform-level billing construct with no equivalent in Twenty. We preserve remaining share credits and sync counts as a custom field (Blinq_Usage_Reference__c) for billing reconciliation purposes, but Twenty does not use this data for any platform feature.

BlinQ

Custom Card Field

maps to

Twenty CRM

Custom field on People

1:1
Fully supported

Blinq Business and Enterprise plans allow custom card fields beyond the standard set. Each unique custom card field Blinq has configured becomes a custom field in Twenty's Settings → Data Model under the People object, with the field type matched to the data (text, URL, date, etc.).

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.

BlinQ logo

BlinQ gotchas

High

Credit system charges per scan and sync

Medium

Recipient solicitation emails sent automatically

High

No public bulk export API documented

Medium

CRM sync deduplication rules affect imported records

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

  • Blinq API rate limit constrains export speed on non-Enterprise tiers

    Blinq's REST API caps at approximately 100 requests per minute on the free and lower-tier plans. Large workspaces with 5,000+ card records require paginated export runs spread across multiple API sessions. FlitStack AI implements exponential backoff and batch grouping to respect this limit, but the export phase extends proportionally. Customers on Blinq Business or Enterprise tiers have higher rate allowances and faster export windows — we confirm the plan tier during scoping before committing to a timeline.

  • Blinq's N:N person-to-company model collapses to one primary company in Twenty

    Blinq supports multiple associated companies per card-holder (a contact can list N companies). Twenty's People object has a single companyId relation field — the primary link to one Companies record. We resolve the primary company using a deterministic rule (most recently modified association, or a specified priority order) and surface secondary companies in a custom text field (Additional_Companies__c). Customers should review the resolved primary company assignments during the sample migration phase before the full run commits.

  • Twenty CSV import has a 20,000-record ceiling per operation

    Twenty's CSV import process handles a maximum of 20,000 records per single file upload operation. Blinq workspaces containing more than 20,000 total contacts require splitting the dataset into multiple chunked import files, each falling below the 20,000-record ceiling. This chunking strategy must include careful deduplication logic at the boundary between chunks to prevent duplicate record creation. FlitStack AI manages the chunking approach and cross-chunk deduplication during migration planning, using the Blinq card ID as the unique identifier for de-duplication across file splits and ensuring no contacts are lost or duplicated during the multi-file import sequence.

  • No Blinq workflows exist to migrate — but Zapier integrations do need rebuilding

    Blinq has no native workflow or automation engine — there are no workflow definitions stored inside Blinq to export and replay in Twenty. The automation layer for Blinq lives entirely in Zapier (or Make/n8n) connections between Blinq and other CRMs. These integrations must be rebuilt from scratch using Twenty's REST API, GraphQL endpoint, or webhook triggers. FlitStack AI can export a Zapier trigger configuration as a reference document for rebuilding, but the Zap itself requires manual recreation in the Zapier dashboard.

  • Blinq's credit-based billing model has no native equivalent in Twenty

    Blinq charges per badge scan, per CRM sync, and per email sent through its platform. These billing constructs do not exist in Twenty CRM — Twenty operates on per-seat licensing with no per-transaction billing. We preserve Blinq credit usage data as a custom reference field (Blinq_Usage_Reference__c) on People records, but this is for audit purposes only. If teams need to track networking activity costs post-migration, a custom solution using Twenty's custom fields and reporting is required.

Migration approach

Six steps for a successful BlinQ to Twenty CRM data migration

  1. Audit Blinq workspace via API

    FlitStack AI authenticates to the Blinq API using the workspace credentials, enumerates all card records, tag taxonomies, meeting notes, and company associations, and exports the full dataset. We log the API rate limit of the account tier during this phase — if the tier is below Business and the record count exceeds 5,000, we plan multiple paginated export sessions with backoff logic to avoid hitting the rate ceiling.

  2. Design Twenty data model and create custom fields

    Based on the Blinq audit findings, we define and create all required custom fields in Twenty's Settings → Data Model before importing any data. This includes Tags__c, Qualifiers__c, Card_Shares__c, Card_Views__c, Meetings_Count__c, LinkedIn_URL__c, Twitter_URL__c, Source_System_ID__c, CRM_Sync_History__c, and additional custom fields identified during the audit scope. Since Twenty requires field definitions to exist prior to CSV import, this step runs first to ensure the import schema is fully prepared and validated when migration data begins arriving through the pipeline.

  3. Invite and provision Twenty users

    Twenty requires workspace users to exist before owner and assignee relations can resolve during import. We export the owner list from Blinq (card owners by email) and compare against the Twenty user list. Any unmatched owners are flagged — teams either invite the user to Twenty first or designate a fallback assignee. No People record imports without a resolved owner in Twenty.

  4. Import Companies, then People, then Notes in dependency order

    Twenty's CSV import resolves relations by unique field values — a People record with a companyId must have that Company record already present. We sequence the import as: (1) Companies — using domain as the unique key, (2) People — with companyId resolved by matching company name to the imported Companies, (3) Notes — linked to People by email. For workspaces over 20,000 records, we split into multiple CSV chunks under the per-file limit.

  5. Run sample migration and field-level diff

    A representative sample of 100–500 records migrates first, covering a cross-section of tag types, meeting records, contacts with multiple company associations, and contacts with social links. We generate a field-level diff comparing source Blinq values against the migrated Twenty values so you can verify tag mapping, primary company resolution, meeting linkage, and custom field population before the full run commits.

Platform deep dives

Context on both ends of the pair

BlinQ logo

BlinQ

Source

Strengths

  • Free plan with two full cards and no branding watermark is the most generous entry-level offering in the category.
  • Native direct-sync connectors for Salesforce and HubSpot without requiring Zapier for core CRM workflows.
  • Captures full contact context beyond name and email—notes, tags, meeting details, and enrichment all flow to the CRM.
  • Email signature builder embeds the digital card directly into outbound email without manual setup.
  • Enterprise tier includes SSO, dedicated customer success, priority support, and custom onboarding for 300+ seat deployments.

Weaknesses

  • Credit-based billing for badge scans and CRM syncs creates unpredictable costs for high-volume event users.
  • No documented public API or bulk data export endpoint limits migration to CRM sync workarounds and manual downloads.
  • Analytics and reporting are paywalled on all tiers, restricting visibility into connection volume and trends.
  • Recipients receive solicitation emails after being scanned, which can conflict with professional networking expectations.
  • The platform's depth reaches a ceiling for users who depend on it heavily—automation and integration expansion is limited compared to all-in-one CRM 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. 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 BlinQ 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

    BlinQ: Not publicly documented.

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

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

Book a free 30 minute consultation

Blinq to Twenty migrations are typically faster than full-CRM-to-full-CRM moves because Blinq has fewer object types to map. Small workspaces under 5,000 contacts usually complete in 48–72 hours of clock time. Mid-size setups with 5,000–20,000 contacts extend to 1–2 weeks, with most of that time spent on API pagination under Blinq's rate limits and Twenty custom field setup. The sample migration phase is the longest single step because it requires resolving primary company associations across the full record set before committing.

Adjacent paths

Related migrations to explore

Ready when you are

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