Helpdesk migration

Migrate from DoneDone to Freshdesk

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

DoneDone logo

DoneDone

Source

Freshdesk

Destination

Freshdesk logo

Compatibility

90%

9 of 10

objects map 1:1 between DoneDone and Freshdesk.

Complexity

BStandard

Timeline

2-3 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from DoneDone to Freshdesk is primarily a record-type and workflow remapping. DoneDone organizes work around Issues with a flexible project-level Workflow model where each project defines its own status progression; Freshdesk uses a Tickets model with configurable pipelines, groups, and agents. The migration requires enumerating every distinct DoneDone project workflow, mapping each status sequence to a Freshdesk pipeline and set of status values, and resolving the DoneDone multi-watcher model (which allows multiple watchers per Issue) against Freshdesk's single assigned agent per ticket. We flatten the watcher list to a multi-select custom field and assign the primary watcher as the ticket agent by default. Private comments migrate as Freshdesk internal notes to prevent exposing internal team discussions to end customers. Saved Replies become Freshdesk Canned Responses. We do not migrate DoneDone Workflows, Automations, or Auto-responders as code; we deliver a written inventory of every workflow requiring rebuild in Freshdesk's Rule Engine post-migration.

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

DoneDone logo

DoneDone

What's pushing teams away

  • DoneDone lacks the advanced reporting and analytics that growing teams need to demonstrate team velocity, SLA compliance, or trends over time, pushing them toward platforms with built-in dashboards.
  • The flexible project structure, while useful initially, can cause projects to diverge organically — teams find themselves with inconsistent workflows across projects as the team grows.
  • Scaling limitations become apparent for larger organizations: fewer administrative controls, no enterprise SSO options documented, and pricing per-seat that grows unfavorably against platforms with volume discounts.
  • Custom automation capabilities are limited compared to modern helpdesk tools — teams that rely on complex routing, SLAs, or auto-escalation find DoneDone cannot support those workflows.

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 DoneDone objects map to Freshdesk

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

DoneDone

Issue

maps to

Freshdesk

Ticket

1:1
Fully supported

DoneDone Issues map directly to Freshdesk Tickets. The Issue title becomes Ticket subject, description becomes Ticket description, status maps to Freshdesk status (Open, Pending, Resolved, Closed), priority maps to Freshdesk priority (Low, Medium, High, Urgent). We preserve the original DoneDone issue ID in a custom field donedone_issue_id__c for audit reference. Linked tasks and sub-issues map to Freshdesk ticket links or are migrated as separate tickets with a parent-child relationship preserved through a custom field.

DoneDone

Project

maps to

Freshdesk

Group

1:1
Fully supported

DoneDone Projects map to Freshdesk Groups. The project name becomes the group name, and the default fixer (project-level assignee) becomes the group lead. If a DoneDone project maps to a specific Freshdesk product or business unit, we create a Freshdesk Product record and associate tickets to it. Projects without an obvious Freshdesk group equivalent become a dedicated group that the customer names post-migration.

DoneDone

Workflow

maps to

Freshdesk

Pipeline + Status

lossy
Fully supported

Each distinct DoneDone project Workflow enumerates its own set of Status values and permitted transitions. We map each unique DoneDone status to a Freshdesk ticket Status value. If multiple DoneDone projects share a Workflow, they share one Freshdesk Pipeline. If projects have diverged into unique Workflows, we create separate Freshdesk Pipelines and configure a Rule Engine condition to route incoming tickets to the correct pipeline based on project tag or group. Status color mapping transfers from DoneDone to Freshdesk's status color palette where the destination UI supports it.

DoneDone

Tag

maps to

Freshdesk

Tag

1:1
Fully supported

DoneDone tags migrate as Freshdesk tags on the corresponding tickets. Tags are a flat string array in DoneDone and map directly to Freshdesk's tag model. We preserve tag-to-issue associations by applying the original tag strings to migrated tickets. If a ticket had multiple tags in DoneDone, the migrated ticket in Freshdesk receives all of them.

DoneDone

Saved Reply

maps to

Freshdesk

Canned Response

1:1
Fully supported

DoneDone Saved Replies are template text snippets that agents use to respond to recurring ticket types. These map to Freshdesk Canned Responses. We preserve the Saved Reply name, content, and any shortcode or trigger text. Canned Responses in Freshdesk are associated with a Group or available globally; we default to global availability and let the customer's admin scope them to specific groups post-migration.

DoneDone

Private Comment

maps to

Freshdesk

Internal Note

1:1
Fully supported

DoneDone private comments (visible only to internal team members, not to the end customer) map to Freshdesk Internal Notes on the corresponding ticket. This is a required mapping because exposing internal team discussions to end customers via Freshdesk's public reply would be a data exposure risk. We flag this mapping explicitly during scoping and confirm with the customer before migration begins.

DoneDone

Watcher (primary)

maps to

Freshdesk

Agent (assigned)

1:1
Fully supported

DoneDone Issues have a primary watcher in addition to any secondary watchers. We map the primary watcher to the Freshdesk ticket's assigned agent field. Secondary watchers are preserved as a comma-separated string in a custom multi-select field donedone_watchers__c on the Freshdesk ticket so that the customer can reference the original watcher list. The customer verifies during scoping that single-agent assignment semantics in Freshdesk workflow routing are acceptable.

DoneDone

Attachment

maps to

Freshdesk

Attachment

1:1
Fully supported

DoneDone attachments on Issues reference files stored in Google Drive integration. We download each attachment from the source URL, re-upload it to Freshdesk's file storage using the Freshdesk attachments API, and attach it to the corresponding ticket. File name, size, and uploader metadata transfer. If the source file URL is inaccessible (revoked Drive permission or deleted file), we flag the attachment as skipped with a record in the migration report for the customer to address manually.

DoneDone

Task History

maps to

Freshdesk

Ticket Conversation

1:1
Fully supported

Every DoneDone Issue carries a timestamped history log of field changes (status transitions, assignee changes, priority changes, description edits). We replay this history as a series of internal notes on the Freshdesk ticket in chronological order, each annotated with the timestamp and the field that changed. This preserves the full audit trail of who changed what and when without requiring the customer to navigate a separate history view.

DoneDone

Due Date

maps to

Freshdesk

Due By

1:1
Fully supported

DoneDone Issue due dates map to Freshdesk ticket_due_by. If the original due date has passed, we flag the ticket in the migration report and set Freshdesk's fr_due_by timestamp accordingly; tickets with past due dates are not automatically escalated but are visible for the customer's admin to prioritize post-migration.

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.

DoneDone logo

DoneDone gotchas

High

Reporting data cannot be exported as structured records

High

Private comments require explicit visibility handling

Medium

Flexible project structure causes workflow divergence over time

Medium

Multi-watcher Issue model requires flattening for most destinations

Low

API access is permission-gated to match application access

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

  • DoneDone Reports cannot be exported as structured data

    DoneDone's Reports dashboard generates on-demand visualizations from the issue history log rather than storing reporting data as a discrete exportable object. No structured reporting records exist in the DoneDone API or CSV export to migrate. We flag this during scoping and advise the customer to export any needed reports as PDFs or screenshots before migration cutover. Freshdesk's reporting module provides pre-built and custom reports from ticket data migrated post-cutover, but historical DoneDone report snapshots cannot be transferred. Customers relying on DoneDone SLA metrics or velocity charts must rebuild those visualizations in Freshdesk using migrated ticket data as the new source.

  • DoneDone multi-watcher model requires explicit flattening

    DoneDone Issues support multiple watchers in addition to a primary assignee. Freshdesk tickets support a single assigned agent per ticket with agent groups for shared workloads. We map the primary watcher to the Freshdesk agent field and preserve the full watcher list in a custom multi-select field on the ticket. If Freshdesk's Rule Engine or routing automations depend on single-agent assignment semantics for escalation or SLA tracking, the customer must verify that these automations handle the multi-select watcher field correctly or adjust their routing logic to work with the assigned agent field only.

  • Per-project workflows require manual status mapping confirmation

    DoneDone allows each Project to define its own Workflow independently, so teams operating for years accumulate Projects with different status sets, transition rules, and naming conventions. We enumerate every distinct Workflow across all Projects during scoping and produce a status-to-status mapping table for the customer to review and approve. Projects with non-standard workflows that have no clear Freshdesk status equivalent require manual confirmation from the customer. If the customer skips this review step, we default to the closest standard Freshdesk status (Open, Pending, Resolved, Closed) and document any unresolved gaps in the migration report.

  • Private comments must map to Freshdesk internal notes

    DoneDone distinguishes public customer-visible comments from private internal comments. If private comments migrate as Freshdesk public replies, internal team discussions become visible to end customers. We apply private-comment-to-internal-note mapping by default and confirm the target field with the customer during the scoping call. This mapping is confirmed before migration begins and cannot be reversed post-import without manually editing each ticket.

  • Freshdesk API requires Blossom tier or above

    DoneDone's REST API is available on all tiers with admin-gated access. Freshdesk's API, which we use for all data migration, is only available on the Blossom tier ($29/agent) and above. The Sprout (free) and Lite tiers have no API access. If the customer's Freshdesk account is on a lower tier, we flag this during discovery and advise them to upgrade to Blossom or above before migration begins. The DoneDone side of the migration uses the standard REST API available on all DoneDone tiers.

Migration approach

Six steps for a successful DoneDone to Freshdesk data migration

  1. Discovery and scope enumeration

    We audit DoneDone across all Projects, enumerating every distinct Workflow in use and capturing the full status set, transition rules, and naming for each. We extract a representative sample of Issues across each Project to identify common tag patterns, Saved Replies usage, attachment volume, and the proportion of issues with multiple watchers or private comments. We confirm the customer's Freshdesk tier (must be Blossom or above for API access) and identify any Freshdesk Products or Groups that should map to DoneDone Projects. The discovery output is a written scope document with the enumerated workflow map, object count estimates, and any explicit mapping decisions the customer must approve.

  2. Workflow mapping design and confirmation

    We produce a status-to-status mapping table for every distinct DoneDone Workflow, mapping each DoneDone status to a Freshdesk ticket status value. If multiple DoneDone Workflows are functionally equivalent, we consolidate them into a single Freshdesk Pipeline. For Workflows with non-standard status sets that have no direct Freshdesk equivalent, we propose a mapping and present it to the customer's admin for explicit approval. We configure Freshdesk Pipelines and Status values in the destination account before any data moves. Saved Replies map to Freshdesk Canned Responses during this phase so that the customer can verify template content and shortcode triggers.

  3. Schema pre-creation in Freshdesk

    We create any required custom fields in Freshdesk (donedone_issue_id__c for audit reference, donedone_watchers__c for preserved watcher lists, and any other fields the customer's reporting needs require). We configure Freshdesk Products if the customer wants product-level ticket tracking, and we set up Groups that map to DoneDone Projects. We verify that the Freshdesk Rule Engine has the routing conditions needed to send incoming tickets to the correct pipeline based on project tag or group. All schema work happens in the customer's Freshdesk account before the first record is migrated.

  4. Demo migration and reconciliation

    We run a migration of a representative sample (typically 100-500 records across multiple Projects) into a test environment or the production Freshdesk account with a known subset of data. The customer reconciles record counts, spot-checks 25-50 random tickets against the DoneDone source for field accuracy, and confirms that private comments migrated as internal notes, watchers preserved in the custom field, and Saved Replies accessible as Canned Responses. Any mapping corrections (status mapping errors, custom field misplacements, missing attachments) are documented and corrected before the full migration runs.

  5. Full migration in dependency order

    We run the full migration in record-dependency order: Groups and Products first (so Freshdesk lookup targets exist), then Tickets (with Issue history replayed as internal notes, primary watcher mapped to agent, secondary watchers in the custom field, and attachments downloaded and re-uploaded), then Tags applied to tickets, then Canned Responses verified. Each phase emits a row-count reconciliation report. If the migration encounters API rate limits on Freshdesk's side (200 calls per minute on Growth, 400 on Pro, 700 on Enterprise), we apply exponential backoff and batch chunking to stay within the limit without losing records.

  6. Cutover, validation, and workflow inventory handoff

    We freeze DoneDone writes during the cutover window, run a final delta migration of any records modified during the migration, and enable Freshdesk as the system of record. We deliver a written inventory of every DoneDone Workflow and Automation requiring rebuild in Freshdesk's Rule Engine, with a recommended Rule Engine trigger and condition set for each. We do not rebuild DoneDone Workflows or Auto-responders as Freshdesk rules; that is a separate engagement or an internal admin task. We provide a one-week hypercare window to resolve any post-migration reconciliation issues.

Platform deep dives

Context on both ends of the pair

DoneDone logo

DoneDone

Source

Strengths

  • Clean, opinionated interface that non-technical stakeholders can navigate without training.
  • Built-in workflow templates get new projects configured correctly without requiring process design from scratch.
  • Shared inbox plus task tracking in one tool eliminates the context-switch between responding to customers and tracking work items.
  • Lightweight REST API exposes all core objects for integrations and programmatic access.
  • CSV and XLSX export available at the global or per-project issue list level.

Weaknesses

  • Limited reporting and analytics — no historical trend dashboards, no SLA reporting, no custom report builder built in.
  • No enterprise SSO documented in the public plan; organizations needing SAML or SCIM provisioning are not supported on standard tiers.
  • Flexible project structure means workflows and issue organization can drift across projects as teams grow without governance controls.
  • Automation is limited to auto-responders and workflow-based reassignment; there is no rule engine for complex routing or conditional actions.
  • Multi-watcher model on Issues does not map cleanly to platforms that support only a single assignee per ticket.
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. 1 of 7 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 DoneDone and Freshdesk.

  • Object compatibility

    B

    1 of 7 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

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

  • API constraints

    B

    DoneDone: Not publicly documented.

  • Data volume sensitivity

    A

    DoneDone exposes a bulk API — large-volume migrations stream efficiently.

Estimator

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

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

Can't find your answer?

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

Book a free 30 minute consultation

Most migrations land between two and three weeks for accounts under 10,000 Issues across fewer than 10 projects with consistent workflows. Migrations with 10 or more distinct project workflows, large attachment volumes (over 5 GB), complex Saved Replies sets, or customers requiring extensive workflow mapping confirmation extend to four to seven weeks because of the per-project workflow enumeration and status-to-status mapping review that must happen before data moves.

Adjacent paths

Related migrations to explore

Ready when you are

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