Helpdesk migration

Migrate from Hesk to Zendesk

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

Hesk logo

Hesk

Source

Zendesk

Destination

Zendesk logo

Compatibility

55%

6 of 11

objects map 1:1 between Hesk and Zendesk.

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Hesk to Zendesk is a database-first migration to an API-first destination. Hesk has no public REST API, so we connect directly to the MySQL instance to extract Tickets, Knowledge Base articles, Categories, Users, Staff Accounts, Custom Fields, Canned Responses, and Ticket History. Zendesk receives all data via its REST API or CSV import, and we handle the transformation of Hesk's flat ticket structure into Zendesk's Comment-based threading model. Attachment files live on Hesk's file system alongside database path references; we export both together and re-map attachment URLs post-import into Zendesk's media storage. Hesk's flat category hierarchy maps to Zendesk Guide's Section and Category model. Workflows, custom scripts from the Mods-for-HESK community, and Hesk's email piping configuration do not migrate; we document these for the customer's admin to rebuild in Zendesk.

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

Hesk logo

Hesk

What's pushing teams away

  • Hesk has no built-in REST API, which blocks teams that need to automate workflows, integrate with CRMs, or connect third-party chatbots at scale.
  • The admin UI is described as functional but dated, with reviewers noting the management panel could benefit from modern design and UX improvements.
  • Larger support teams outgrow Hesk's flat feature set and migrate to platforms like Zendesk, Freshdesk, or JIRA Service Management for automation, SLA management, and multi-channel routing.
  • Hesk Cloud pricing is not transparently published on the site, leading some customers to feel uncertain about total cost when moving off self-hosted.
  • The knowledge base and ticket search are basic compared to enterprise alternatives, with limited customisation of article layouts and no built-in versioning.

Choosing

Zendesk logo

Zendesk

What's pulling them in

  • Mature omnichannel routing across email, chat, phone, messaging, and social — one unified inbox for support teams regardless of size or complexity.
  • Deep automation with Triggers, Automations, and SLA Policies lets high-volume teams enforce consistent workflows without manual ticket handling.
  • Large ecosystem of third-party integrations and a public app marketplace reduce friction for teams already using Salesforce, Jira, or Slack.
  • Industry-leading brand recognition and trust signal — many enterprise buyers default to Zendesk as a known quantity in vendor procurement cycles.
  • Generous documentation library and community mean onboarding teams can self-configure without needing a services engagement to get started.

Object mapping

How Hesk objects map to Zendesk

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

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

Hesk

Ticket

maps to

Zendesk

Ticket

1:1
Fully supported

Hesk tickets map to Zendesk tickets with subject, description, status, priority, and category preserved. Hesk's linear reply history in the ticket-track table transforms into Zendesk's Comment records, splitting each reply into a public or private Comment based on Hesk's iscustomer flag. Original Hesk ticket ID is stored in a Zendesk custom field zesk_original_id__c for cross-referencing. Status values (open, resolved, closed, pending) map to Zendesk ticket Status; custom Hesk statuses are re-created as Zendesk custom field values.

Hesk

Ticket History

maps to

Zendesk

Ticket Comments

1:1
Fully supported

Hesk logs each ticket event (opened, replied, status change, assignment) as a separate row in the ticket-tracking table. We transform this into Zendesk Comment records ordered by timestamp. Agent replies become public comments; customer replies are imported as requester comments. Event-type entries (status changes, assignment changes) without body content are stored as private Comments with a system-generated note for audit purposes.

Hesk

Knowledge Base Article

maps to

Zendesk

Zendesk Guide Article

1:1
Fully supported

Hesk KB articles (title, HTML content, category association, attachments) map to Zendesk Guide articles inside Sections. We preserve article HTML as the body, map Hesk category to the corresponding Zendesk Section, and handle inline images by exporting from Hesk's file system and uploading to Zendesk's media service with URL re-mapping in the article HTML. Hesk's article draft/published flag maps to Zendesk's draft/published status.

Hesk

KB Category

maps to

Zendesk

Zendesk Guide Section

lossy
Fully supported

Hesk's flat category structure maps to Zendesk Guide Sections. If the customer uses nested Hesk categories, we flatten them into a single section hierarchy during migration or create a top-level Category in Zendesk Guide as the container. We document the original Hesk category tree as metadata on each article for post-migration restructuring if needed.

Hesk

User (End User/Customer)

maps to

Zendesk

End User

1:1
Fully supported

Hesk end-user records (name, email, IP address, created date) map to Zendesk End User records. Email is the dedupe key. Hesk's IP address field is stored in a Zendesk custom field hesk_ip__c for GDPR audit purposes. Any Hesk user records without a valid email address are held in a reconciliation queue; Zendesk requires a valid email for End User accounts. GDPR anonymisation requests are processed before migration if the customer has a data-cleanup requirement.

Hesk

Staff Account

maps to

Zendesk

Agent

1:1
Fully supported

Hesk staff accounts (name, email, role: administrator/manager/agent, password hash) map to Zendesk Agent profiles. Hesk's role hierarchy (admin > manager > agent) maps to Zendesk's agent, admin, and light agent roles. We do not migrate password hashes because Hesk uses bcrypt and Zendesk uses its own authentication; staff accounts are provisioned in Zendesk with temporary passwords set by the customer's admin. The customer's admin maps Hesk staff IDs to Zendesk Agents before migration to preserve assignment history.

Hesk

Custom Field (Ticket)

maps to

Zendesk

Custom Ticket Field

lossy
Fully supported

Hesk per-ticket custom fields map to Zendesk custom ticket fields. Field types are matched: text to text, number to numeric, dropdown to dropdown, checkbox to checkbox. Hesk dropdown values become Zendesk dropdown options. We create the destination fields in Zendesk Admin Center before migration and map Hesk field values to the corresponding Zendesk field IDs. Multi-select checkboxes in Hesk map to Zendesk tag-based fields or multi-select picklists depending on the customer's reporting needs.

Hesk

Custom Field (User)

maps to

Zendesk

Custom User Field

lossy
Fully supported

Hesk per-user custom fields map to Zendesk user fields in Admin Center under People > Configuration > User fields. The same type-matching logic applies (text, numeric, dropdown, checkbox). These fields appear in the Zendesk agent interface when viewing end-user profiles.

Hesk

Canned Response

maps to

Zendesk

Macros

1:1
Mapping required

Hesk canned responses (title, HTML content) map to Zendesk Macros. Each canned response becomes a Zendesk macro with the title preserved and the HTML body set as the macro body. Macros are created at the account level so all agents can access them. Private versus public visibility is not a Hesk feature, so all migrated macros default to account-level visibility in Zendesk.

Hesk

Attachment

maps to

Zendesk

Ticket Attachment

lossy
Fully supported

Hesk stores attachments on disk with paths (e.g., attachments/ticket_123/file.pdf) stored in MySQL. We export the entire attachments directory alongside the database, then upload each file to Zendesk's media service during the ticket import phase. Each ticket's MySQL attachment rows are matched to the corresponding Zendesk ticket ID post-upload, and the Zendesk attachment URLs are inserted as Comment attachments. If the destination Zendesk domain differs from the source Hesk domain, all attachment URLs are re-mapped in article HTML during KB import.

Hesk

Category (Ticket Category)

maps to

Zendesk

Ticket Field (Dropdown)

lossy
Fully supported

Hesk ticket categories (name, description) map to a Zendesk custom dropdown ticket field named Category. We create the Category field in Zendesk, import all category names as dropdown options, then update every ticket's category reference to use the Zendesk field option ID rather than the Hesk numeric category ID. The original Hesk category tree is documented for the customer to optionally restructure in Zendesk views.

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.

Hesk logo

Hesk gotchas

High

No REST API means all migrations are database-first

High

Moving Hesk between servers requires version parity

Medium

GDPR anonymisation may conflict with ticket preservation

Medium

Attachments are file-system references, not database blobs

Low

Custom field limits are undocumented but exist

Zendesk logo

Zendesk gotchas

High

Data export requires API scripting on non-Enterprise plans

Medium

Automations cap at 500 active rules and 1,000 tickets per hour

Medium

Help Center has no native export feature

High

Custom Objects and full data export are Enterprise-only

Pair-specific challenges

  • Hesk has no REST API — database credentials are required

    All Hesk data extraction runs against the MySQL database directly. We require read access to the Hesk MySQL instance (host, port, credentials) and the customer must ensure our migration host can reach the MySQL port (default 3306) over the network. For self-hosted Hesk behind a firewall, the customer either opens the port with IP whitelisting or provides an SSH tunnel. This is structurally different from migrations between two API-based platforms where OAuth credentials suffice. If the customer cannot provide database access, we fall back to Hesk's XML/Excel export from the admin UI, but this export does not include ticket attachments or full custom field values, which reduces migration fidelity.

  • Original Hesk ticket IDs do not survive import into Zendesk

    Zendesk generates new sequential ticket IDs on import. Any references to Hesk ticket numbers embedded in email threads, external documents, or customer communications will break after migration. We store the original Hesk ticket ID in a custom Zendesk field (zesk_original_id__c) on every migrated ticket so agents can search for the legacy reference. However, links in external systems to Hesk ticket URLs (e.g., in a CRM, project tracker, or Confluence page) require manual updating post-migration. We document all known external link patterns during discovery so the customer's admin can update them before cutover.

  • Attachment file-system paths must be bundled with the database export

    Hesk stores attachments on the server file system (typically /attachments/ or /uploads/) with paths referenced in MySQL. A database-only export leaves attachment links broken. We require the customer to provide the entire attachments directory as a zip archive alongside the database dump, or direct file-system access during discovery. We re-upload each file to Zendesk's media service, map the attachment to the correct Zendesk ticket ID, and update inline image URLs in KB articles. Large attachment directories (over 10 GB of files) add to migration time and may require the customer to pre-archive old resolved-ticket attachments before the migration window.

  • Hesk KB article categories map to a flatter Zendesk Guide structure

    Hesk uses a single-level category-to-article structure. Zendesk Guide uses Categories > Sections > Articles (two levels). If the customer has used Hesk categories as a tagging mechanism (e.g., product category, team category, region category) rather than a true content hierarchy, the flat-to-nested mapping may lose granularity. We document the original Hesk category tree during discovery and either flatten it into Zendesk Sections or create a single-category container with Sections representing the original categories. The customer chooses the restructuring strategy before migration begins.

  • GDPR anonymisation before migration may conflict with attachment preservation

    If the customer requests PII anonymisation as part of a pre-migration data-cleanup pass (e.g., stripping names, emails, and IPs from resolved tickets), we must decide whether to preserve ticket subjects and thread content that may contain indirect identifiers. Anonymisation also does not affect attachment filenames or inline images that may contain PII in metadata. We clarify the customer's GDPR scope during discovery, apply anonymisation only to the MySQL export before transformation, and flag any attachment filenames or article content that may require additional PII scanning. This step adds a discrete cleanup phase to the migration timeline.

Migration approach

Six steps for a successful Hesk to Zendesk data migration

  1. Discovery and database access

    We conduct a scoped discovery call with the customer's Hesk admin to confirm the Hesk version, MySQL access details (host, port, credentials, database name), attachment file-system path, custom field definitions, and any GDPR anonymisation requirements. We enumerate all Hesk MySQL tables and document the schema for the specific Hesk version in use. We confirm the Zendesk target account (edition, Guide enabled/disabled, existing custom fields, agent accounts) and verify API access. The discovery output is a written migration scope covering record counts, object mapping, and any pre-migration cleanup items.

  2. Schema extraction and transformation design

    We connect to the Hesk MySQL database and extract the full schema: tickets, ticket-tracking history, users, staff accounts, categories, custom field definitions and values, canned responses, and KB articles. We design the Zendesk target schema to include matching custom fields (created as Zendesk ticket fields and user fields before migration), a Category dropdown field, and any required custom fields for preserving original Hesk IDs. For Zendesk Guide, we create the top-level Categories and Sections based on the restructuring strategy agreed during discovery. All schema creation runs in the customer's live Zendesk environment or a staging org before production migration begins.

  3. Attachment export and media preparation

    We bundle the Hesk attachments directory (file-system path from MySQL attachment rows) into a structured archive organised by ticket ID. Inline images in KB articles are identified and extracted with their original filenames. We upload attachments to Zendesk's media service and record the Zendesk attachment URL for each file, building a lookup table (hesk_attachment_path -> zendesk_attachment_url) used during ticket and article import. Large directories are chunked to avoid timeout; the customer receives a pre-migration checklist for archiving resolved-ticket attachments if volume is a concern.

  4. Sandbox validation and reconciliation

    We run a full migration into the customer's Zendesk Sandbox (or a trial org) using production-equivalent data volume. The customer's Hesk admin reconciles record counts (tickets in, comments in, users in, articles in, agents in), spot-checks 25-50 random tickets against the Hesk source for field accuracy, verifies attachment links, and reviews the KB article rendering in Zendesk Guide. Any mapping corrections, missing dropdown values, or field type mismatches are resolved here before the production run. This phase typically takes three to five business days.

  5. Production migration and delta sync

    We run the production migration in dependency order: Zendesk Categories and Sections first, then End Users, then Agents (mapped by email), then Tickets with Comment history (using the original ID custom field for cross-reference), then KB articles with inline image URL re-mapping, then canned responses as Macros. Each phase emits a row-count reconciliation report. Any tickets created or modified in Hesk during the migration window are caught by a delta migration run immediately before cutover. Zendesk triggers and automations are disabled during import to prevent unwanted email notifications to customers.

  6. Cutover, validation, and handoff documentation

    We freeze Hesk writes during cutover, run the final delta migration, then re-enable Zendesk triggers and validate a sample of 50-100 tickets for field accuracy and attachment integrity. We deliver a written migration summary covering record counts by object, list of custom fields created in Zendesk, list of Macros created, any unmigrated records with reason, and external link patterns that require manual updating (documented with the original Hesk ticket IDs). We do not rebuild Hesk workflows or Mods-for-HESK custom scripts as Zendesk Triggers or Automations; that work is documented as a rebuild checklist for the customer's Zendesk admin. We offer a one-week hypercare window for reconciliation issues raised during the first week of live Zendesk operation.

Platform deep dives

Context on both ends of the pair

Hesk logo

Hesk

Source

Strengths

  • Zero-cost self-hosted option with no per-agent or per-ticket billing ever.
  • PHP/MySQL stack runs on any shared hosting or VPS with minimal server requirements.
  • One-time license fee ($49.99) removes branding and includes direct developer support.
  • Unlimited users per installation regardless of plan.
  • Direct MySQL access gives full data portability for teams comfortable with SQL exports.

Weaknesses

  • No public REST API — automation and third-party integrations require custom development or Mods-for-HESK community add-ons.
  • Dated admin interface compared to modern SaaS help desks; UI customisation is limited to CSS themes.
  • Limited automation: no built-in workflow rules, SLA timers, or escalation triggers beyond basic ticket routing.
  • Server maintenance (backups, upgrades, cron jobs, mail server config) is the customer's responsibility on self-hosted.
  • No native multi-channel routing beyond email-to-ticket; chat, phone, and social channels require external tools.
Zendesk logo

Zendesk

Destination

Strengths

  • Well-documented REST API with broad endpoint coverage for Tickets, Users, Organizations, and Help Center.
  • Rich automation primitives: Triggers (event-driven), Automations (time-based), and Macros with variable substitution.
  • Multi-brand support enables large organizations to route and isolate support by product line or subsidiary.
  • Scalable from small teams on Team plan to global enterprises on Enterprise Plus with sandbox and disaster recovery options.
  • Large partner ecosystem and marketplace with hundreds of pre-built integrations reduces integration work at deployment.

Weaknesses

  • Per-agent pricing with aggressive feature gating makes lower tiers feel artificially limited.
  • No native full-KB export — Help Center content requires API scripting to extract.
  • AI features are add-on priced and behave inconsistently, not deeply embedded in core workflows.
  • Implementation timelines for complex multi-channel setups routinely exceed initial estimates by weeks or months.
  • Knowledge base and help center functionality are separate from core ticketing with their own permission model and versioning.

Complexity grading

How hard is this migration?

Standard Helpdesk migration. 2 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 Hesk and Zendesk.

  • Object compatibility

    B

    2 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

    Hesk: Not documented.

  • Data volume sensitivity

    B

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

Estimator

Estimate your Hesk to Zendesk 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 Hesk to Zendesk data migrations

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

Can't find your answer?

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

Book a free 30 minute consultation

Most migrations land between three and five weeks for accounts under 10,000 tickets with a modest knowledge base and no large attachment directory. Migrations with large knowledge bases (over 500 articles), extensive file attachments (over 5 GB), or complex custom field structures move to six to ten weeks because of the file-system bundling work, inline image URL re-mapping in KB articles, and KB restructuring requirements. The customer controls the timeline through their responsiveness during discovery, schema validation in Sandbox, and the speed of any pre-migration data-cleanup decisions.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Hesk.
Land in Zendesk, 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