Skip to main content

How to Migrate from HubSpot to Twenty CRM

·OSSAlt Team
hubspottwentymigrationcrmguide

How to Migrate from HubSpot to Twenty CRM

HubSpot's free CRM works until you need marketing, sales, or service hubs — then pricing jumps to $20-120+/user/month. Twenty is the modern open source CRM — Notion-like UX, GraphQL API, and full data ownership. Here's how to migrate.

Step 1: Deploy Twenty

# Docker Compose
git clone https://github.com/twentyhq/twenty.git
cd twenty
cp .env.example .env
# Configure DATABASE_URL, REDIS_URL, etc.
docker compose up -d

Access at localhost:3000 and create your workspace.

Step 2: Export from HubSpot

Contacts:

  1. HubSpot → ContactsActionsExport
  2. Select all properties or choose specific ones
  3. Download CSV

Companies:

  1. HubSpot → CompaniesActionsExport
  2. Download CSV

Deals:

  1. HubSpot → DealsActionsExport
  2. Download CSV

Step 3: Import into Twenty

Twenty supports CSV import:

  1. Open Twenty → SettingsData Model
  2. Verify your object fields match HubSpot's export columns
  3. Go to the People or Companies view
  4. Click Import → Upload CSV
  5. Map columns to Twenty fields

Field mapping:

HubSpotTwenty
First NamefirstName
Last NamelastName
Emailemail
Phonephone
Companycompany (relation)
Job TitlejobTitle
Citycity
Lifecycle StageCustom field
Lead ScoreCustom field

Step 4: Set Up Pipeline

  1. Go to SettingsData ModelOpportunities
  2. Create pipeline stages matching HubSpot:
HubSpot StageTwenty Stage
Appointment ScheduledMeeting Scheduled
Qualified to BuyQualified
Presentation ScheduledDemo
Decision Maker Bought-InNegotiation
Contract SentProposal Sent
Closed WonWon
Closed LostLost

Step 5: Configure Custom Fields

Twenty uses a flexible data model. Add custom fields to match HubSpot properties:

  1. SettingsData Model → select object (People, Companies)
  2. Add Field → choose type (text, number, date, select, relation)
  3. Map your HubSpot custom properties

Step 6: Set Up Integrations

HubSpot FeatureTwenty Equivalent
Email trackingEmail integration (coming)
Meeting schedulingCalendar sync
FormsWebhooks + API
WorkflowsAPI-based automation
ReportingAnalytics views
Email sequencesNot yet (roadmap)
Live chatNot included (use Chatwoot)

Twenty's API is GraphQL — powerful for building custom integrations:

mutation {
  createPerson(data: {
    name: { firstName: "Jane", lastName: "Doe" }
    email: { primaryEmail: "jane@example.com" }
    company: { connect: { id: "company-id" } }
  }) {
    id
  }
}

What You'll Gain

  • Full data ownership — your CRM data on your server
  • Modern UX — Notion-like interface, keyboard shortcuts
  • GraphQL API — powerful, typed API for automation
  • No per-user pricing — unlimited users
  • Custom data model — add any fields or objects
  • Open source — AGPL-3.0, active development

What You'll Lose

  • HubSpot's marketing hub (emails, forms, landing pages)
  • Sales sequences and automation
  • Built-in reporting dashboards
  • App marketplace integrations
  • Customer support ticketing

Cost Comparison

UsersHubSpot StarterTwenty Self-HostedSavings
5$100/month$15/month$1,020/year
10$200/month$25/month$2,100/year
25$500/month$40/month$5,520/year

Migration Timeline

WeekTask
Week 1Deploy Twenty, export HubSpot, import contacts/companies
Week 2Set up pipeline, custom fields, integrations
Week 3Train team, run both CRMs
Week 4Full cutover, archive HubSpot

Compare CRM platforms on OSSAlt — features, data model flexibility, and pricing side by side.