Helpdesk migration

Migrate from Crisp to Freshdesk

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

Crisp logo

Crisp

Source

Freshdesk

Destination

Freshdesk logo

Compatibility

90%

9 of 10

objects map 1:1 between Crisp and Freshdesk.

Complexity

BStandard

Timeline

2-4 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

The structural difference between Crisp and Freshdesk shapes the entire migration. Crisp organizes support around Conversations—linked message threads tied to a Contact and a Website. Freshdesk uses Tickets—a structured record type with status, priority, type, and source fields that must all be populated at import time. We resolve the schema difference by using Crisp Conversation attributes (state, channel, created_at) to populate Freshdesk Ticket fields (status, priority, type, source), and by using the Crisp contact reference to resolve the Freshdesk requester. Operators map to Freshdesk Agents with role mapping documented separately. Crisp Tags move as Ticket labels; Canned Responses move as Freshdesk Saved Replies with placeholder syntax flagged for manual review. Automation logic, chatbot flows, and website widget configuration do not migrate; we deliver a written inventory of these for the admin to rebuild in Freshdesk.

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

Crisp logo

Crisp

What's pushing teams away

  • Mobile app lacks parity with the desktop interface — essential features like the full conversation view and chatbot controls are missing on iOS.
  • AI features including Copilot and auto-reply suggestions consume a limited credit budget that resets monthly and does not roll over, making costs unpredictable.
  • Customer support quality has declined in recent reviews, with users reporting delayed responses and unresolved technical issues.
  • Price increases have frustrated long-time users who locked in lower rates on older plans and now face steeper renewal costs.
  • The CRM module (Contact profiles, custom fields, Segments) requires an Essentials or higher tier, limiting the utility of lower-cost plans.

Choosing

Freshdesk logo

Freshdesk

What's pulling them in

  • Free tier for 1-2 agents with no credit card makes initial evaluation risk-free and appeals to startups and small support teams.
  • Per-agent pricing is predictable and scales cleanly as teams grow from Growth at $15/agent/month to Enterprise at $89/agent/month.
  • Freddy AI Copilot and Email AI Agent bring AI assistance without forcing a full platform switch, appealing to teams already embedded in Freshdesk.
  • Multilingual help desk and customer portal features serve global SMB teams without requiring enterprise-level investment.
  • Collaborators up to 5,000 included in paid plans allow non-agent stakeholders to view tickets without additional licensing cost.

Object mapping

How Crisp objects map to Freshdesk

Each row shows how a Crisp object lands in Freshdesk, including any object-level transformations, lookup resolution, or schema-design dependencies.

Typical mapping — final map is confirmed during the sample migration step.

Crisp

Conversation

maps to

Freshdesk

Ticket

1:1
Fully supported

Crisp Conversations map to Freshdesk Tickets. The Crisp state field (open, pending, resolved, closed) maps to Freshdesk status values (open, pending, resolved, closed). The Crisp channel (chat, email, WhatsApp) maps to Freshdesk type or source field depending on the customer's naming convention. The Crisp created_at timestamp preserves as the Freshdesk created_at. Operator assignments migrate as Freshdesk agent assignments via email-matched resolution.

Crisp

Message

maps to

Freshdesk

Ticket Comment

1:1
Fully supported

Crisp Messages nested inside Conversations map to Freshdesk Ticket Comments in chronological order. The author metadata (operator vs visitor) maps to comment type (reply vs note) in Freshdesk. Attachment URLs preserve and we re-upload files to Freshdesk's attachment storage during migration so that inline images and file links remain functional after cutover.

Crisp

Contact

maps to

Freshdesk

Contact

1:1
Fully supported

Crisp Contacts (available from Essentials tier upward) map directly to Freshdesk Contacts. Standard fields (email, name, phone) migrate to Freshdesk equivalents. Crisp custom properties map to Freshdesk custom contact fields, which must be pre-created in Freshdesk before migration. API-based export from Crisp is used for Free/Mini accounts where the UI export is not available. Contact deduplication uses email as the unique key.

Crisp

Company

maps to

Freshdesk

Company

1:1
Fully supported

Crisp Companies stored in the CRM module map to Freshdesk Companies. The Crisp company name becomes Freshdesk Company name, domain becomes the website field, and any custom properties map to Freshdesk custom company fields. Company-Contact relationships are preserved as Freshdesk Company-Contact lookups at migration time.

Crisp

Operator

maps to

Freshdesk

Agent

1:1
Fully supported

Crisp Operators map to Freshdesk Agents resolved by email match. The Crisp operator role (admin, normal) maps to Freshdesk agent groups and permissions. If the Crisp operator count exceeds the destination Freshdesk plan seat limit, we flag the discrepancy and the customer decides whether to deactivate operators before migration or upgrade the destination plan.

Crisp

Tag

maps to

Freshdesk

Ticket Tags

1:1
Fully supported

Crisp Tags applied to Conversations carry over as Freshdesk Ticket Tags. We extract the full tag list from Crisp and bulk-associate them with migrated Tickets. Tag normalization (lowercase, trim whitespace) is applied during migration to prevent duplicate tags from inconsistent casing.

Crisp

Segment

maps to

Freshdesk

Saved Filter

lossy
Fully supported

Crisp Segments (dynamic Contact filters defined on Essentials+) are exported as structured rule metadata. Freshdesk does not have an equivalent dynamic segment object, so we preserve the segment rules as a written configuration document and recommend converting them to Freshdesk Saved Filters or Smart Views with equivalent filter criteria.

Crisp

Canned Response

maps to

Freshdesk

Saved Reply

1:1
Fully supported

Crisp Canned Responses migrate to Freshdesk Saved Replies. Crisp uses %placeholder% variable syntax (e.g., %session.nickname%). Freshdesk Saved Replies use {{ticket.sender.name}} and similar Liquid-style variables. We export Canned Responses as plain text with placeholders intact and flag them for manual adaptation to Freshdesk's variable format post-migration.

Crisp

Website

maps to

Freshdesk

Product

1:1
Fully supported

Crisp Websites (configured chat widgets tied to a domain) do not have a direct Freshdesk equivalent because Freshdesk is not a chat widget platform. We extract the Website configuration as a written snapshot for documentation purposes. The customer may use Freshdesk's Products object as an organizational container if they support multiple product lines, or use Freshdesk Groups to replicate the website-team assignment.

Crisp

Attachment

maps to

Freshdesk

Attachment

1:1
Fully supported

Crisp Message attachments are stored as URLs pointing to Crisp file storage. We download each attachment and re-upload to Freshdesk's attachment storage during migration, preserving the original filename and file type. The Freshdesk attachment is linked to the target Ticket Comment so that inline images and file links remain functional after cutover.

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.

Crisp logo

Crisp gotchas

High

Contact export is gated behind the Essentials tier

Medium

Contact export ceiling of 200K records

Medium

Multi-level rate limits on the REST API

Low

Seat limits constrain operator record exports

Low

Canned Responses have Crisp-specific variable syntax

Freshdesk logo

Freshdesk gotchas

High

API access is blocked on the free plan

High

Per-minute rate limits are account-wide and endpoint-specific

Medium

Multi-channel source types do not map 1:1 to all destinations

Medium

Custom objects created in-product cannot be accessed by other apps

Low

Contact import requires at least 10 existing tickets in the account

Pair-specific challenges

  • Contact export requires Essentials or API key on Crisp

    The CSV contact export in Crisp's UI is only available on the Essentials plan or higher. Teams on Free or Mini tiers cannot trigger a bulk export from the UI. We work around this by using the Crisp REST API /contacts endpoint, which is accessible with an API key regardless of tier. We confirm API key availability and scope during discovery and use the API export path for lower-tier accounts. If no API key exists, the customer must generate one from Crisp settings before migration begins.

  • Canned Response placeholders use incompatible syntax

    Crisp Canned Responses use %placeholder% syntax (e.g., %contact.email%, %session.nickname%). Freshdesk Saved Replies use Liquid-style {{ticket.sender.name}} and similar variables. We export Canned Responses as plain text with placeholders intact and document every instance that needs manual adaptation. This is not automated because the variable mappings are content-specific. The customer's admin reviews and updates Saved Replies in Freshdesk before activating them.

  • Segments are dynamic with no Freshdesk equivalent

    Crisp Segments are dynamic Contact filters defined by rules (property conditions, combined with AND/OR logic). Freshdesk has no equivalent dynamic segment object. We export the segment rule definitions as structured metadata and deliver a written map of each segment with its filter criteria. The customer's admin converts them to Freshdesk Saved Filters or Smart Views with equivalent criteria. Automation based on segment membership does not migrate.

  • Multi-level API rate limits on Crisp

    Crisp enforces four tiers of rate limiting: load balancer, API global, API route, and plugin quota. For large migrations pulling Conversations and Contacts in bulk, we implement exponential backoff and respect the Retry-After header on 429 responses. We throttle reads below the global limit to avoid disrupting live API access that the customer may still need for operational use during migration.

  • Freshdesk API requires Blossom or above

    Freshdesk's API is not available on the Sprout (free) plan. If the customer provisions a Freshdesk Sprout account as the destination, API-based migration is blocked. We confirm the destination Freshdesk plan during scoping and recommend Blossom ($21/agent/month) or higher if API access is required. The customer must activate the API from their Freshdesk admin panel once the plan is confirmed.

Migration approach

Six steps for a successful Crisp to Freshdesk data migration

  1. Discovery and plan verification

    We audit the source Crisp account: plan tier (Free/Mini/Essentials/Plus), record volumes (Conversations, Contacts, Companies, Operators), active Tags, Segments, Canned Responses, and widget configuration. We verify the destination Freshdesk plan tier and confirm API availability (Blossom or above required). The discovery output is a written migration scope with record counts per object, a list of objects requiring pre-creation in Freshdesk (custom fields, agent groups), and a confirmation of any plan-tier gaps.

  2. Schema pre-creation in Freshdesk

    Before any data moves, we create custom contact fields and custom company fields in Freshdesk that match Crisp's custom properties. We also configure Freshdesk Groups if the customer uses multiple Crisp Websites and wants to map them to team-based routing. Tags are pre-listed in Freshdesk so that the migration script can associate them at import time. Agent groups are created and the migration user is granted appropriate permissions for bulk record creation.

  3. API-based data extraction from Crisp

    We pull Conversations, Messages, Contacts, Companies, Operators, Tags, Segments, and Canned Responses from Crisp using the REST API. For Free and Mini tier accounts, the UI export is unavailable, so we use the /contacts endpoint with API key authentication. For accounts approaching 200K contacts, we chunk exports by ID range and deduplicate on contact_id across passes. Rate limiting is handled with exponential backoff and Retry-After header compliance.

  4. Transformation and schema mapping

    We transform extracted data according to the mapping schema: Conversation state maps to Ticket status, Message authors map to comment types (reply vs note), Crisp Tags normalize and associate with Tickets, and Canned Responses export with placeholders flagged. For Contacts, we deduplicate by email and resolve any missing Company associations. Segments export as structured rule metadata. Attachments download from Crisp storage and prepare for re-upload to Freshdesk.

  5. Pilot migration and reconciliation

    We run a pilot migration of 50-100 random Conversations and their linked Contacts into the destination Freshdesk account. The customer reconciles the sample: checks Ticket status assignment, comment ordering, tag association, and contact-company linking. Any mapping errors are corrected before the full migration begins. This step also validates that Freshdesk API credentials and permissions are correctly configured.

  6. Full migration and cutover

    We run the full migration in dependency order: custom fields and groups (pre-created, validated), Contacts and Companies, Operators (agent provisioning), Conversations (Tickets with resolved requester and agent), Messages (Comments), Tags (Ticket labels), Canned Responses (Saved Replies flagged for adaptation), and Attachments (re-uploaded to Freshdesk storage). We freeze Crisp writes during the cutover window, run a delta migration of any records modified during migration, then hand off. We deliver a Canned Response adaptation guide and a Segment-to-Filter conversion map as written documents for the admin to implement post-migration.

Platform deep dives

Context on both ends of the pair

Crisp logo

Crisp

Source

Strengths

  • Per-workspace pricing model is predictable and avoids per-agent billing surprises common in competing platforms.
  • Chat, email, WhatsApp, and SMS channels converge in a single conversation thread across all paid tiers.
  • REST API covers Conversations, Contacts, Messages, and Websites with documented endpoints and webhook support.
  • Free tier with no time limit provides persistent access to core chat functionality without a credit card requirement.
  • E-commerce plugin ecosystem (Shopify, WooCommerce, PrestaShop) offers low-friction setup for online retail support teams.

Weaknesses

  • Mobile app is materially reduced compared to the desktop experience, limiting agent mobility for field or remote teams.
  • AI Copilot and auto-reply features are credit-gated and do not carry over unused credits between billing cycles.
  • CRM module (Contact profiles, custom fields, Segments) is only available on Essentials and above, restricting data exports for Free/Mini users.
  • Contact export via the UI is capped at 200,000 records per operation, requiring API-based batching for larger datasets.
  • Customer support responsiveness has deteriorated in recent user reviews, raising concerns for teams with critical migration timelines.
Freshdesk logo

Freshdesk

Destination

Strengths

  • Generous free tier with no credit card required for 1-2 agents for 6 months.
  • Per-agent pricing model is transparent and scales linearly with team growth.
  • Freddy AI Copilot integrates assistance directly into the agent workspace without requiring separate tooling.
  • Multilingual help desk and customer portal serve global teams on Pro and Enterprise plans.
  • Shared inbox, threads, and tasks keep ticket context unified across multi-channel conversations.

Weaknesses

  • Freddy AI is a separate paid add-on charged per session, making AI costs unpredictable and hard to budget.
  • Performance issues including delayed loading and duplicate tickets are recurring user complaints during high-volume periods.
  • Customization is more limited than Zendesk, with fewer workflow options and reporting flexibility.
  • Add-ons for chat, advanced routing, and custom reporting are gated behind higher tiers or separate module purchases.
  • API access is completely disabled on the free plan, blocking any programmatic data export or migration tooling.

Complexity grading

How hard is this migration?

Standard Helpdesk migration. All 7 core objects map 1:1 between Crisp and Freshdesk.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Crisp and Freshdesk.

  • Object compatibility

    A

    All 7 core objects map 1:1 between Crisp and Freshdesk.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    7-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    Crisp: Multi-tier: load balancer (permissive), API global (per IP+user), API route (per IP+user, more restrictive), plugin quota (daily for permanent tokens). No exact published numbers — 429 responses with Retry-After header indicate exhaustion..

  • Data volume sensitivity

    B

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

Estimator

Estimate your Crisp to Freshdesk 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 Crisp to Freshdesk data migrations

Answers to the questions buyers ask most during Crisp to Freshdesk migration scoping. Not seeing yours? Book a call.

Can't find your answer?

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

Book a free 30 minute consultation

Most Crisp to Freshdesk migrations complete in two to four weeks for accounts under 5,000 Conversations and 3,000 Contacts. Migrations exceeding 20,000 Conversations, 10,000 Contacts, or requiring multi-chunk export due to the 200K contact ceiling extend to five to eight weeks. Timeline also depends on whether custom contact properties, Segments, or Canned Responses require additional mapping work.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Crisp.
Land in Freshdesk, 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