Helpdesk migration

Migrate from Request Tracker to Gorgias

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

Request Tracker logo

Request Tracker

Source

Gorgias

Destination

Gorgias logo

Compatibility

85%

11 of 13

objects map 1:1 between Request Tracker and Gorgias.

Complexity

CModerate

Timeline

2-4 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Request Tracker to Gorgias is a platform-category shift: RT is an open-source Perl ticketing system built for IT operations queues, while Gorgias is a SaaS helpdesk purpose-built for e-commerce brands with deep Shopify integration, AI-driven ticket triage, and a sidebar widget that surfaces order history, shipping status, and returns data inside every ticket. RT has no native bulk REST API, so all data extraction relies on its tab-delimited spreadsheet export or direct database access; we pre-process the tab-delimited output into RFC-compliant CSV before ingesting it into the migration pipeline. Attachments present a specific challenge because RT stores them as base64-encoded blobs in the Attachments table, not as filesystem objects—we run a targeted SQL export per ticket's attachment IDs, decode the blob, reconstruct the filename and MIME type, and re-attach the resulting file to the Gorgias ticket conversation thread. We do not migrate RT Scrips (Perl automation code) or the internal queue-scoped lifecycle logic; we deliver a written inventory of every active Scrip and Template for the customer's admin to rebuild in Gorgias Rules and Macros post-migration. Custom Fields from RT map to Gorgias Custom Fields, but multi-select and date-range custom field types require manual reconfiguration in the Gorgias admin panel after the migration window closes.

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

Request Tracker logo

Request Tracker

What's pushing teams away

  • RT's web interface is widely described as dated, text-heavy, and visually sparse compared to modern ITSM tools, leading teams with less technical users to migrate toward platforms like Jira Service Management or Freshservice.
  • Self-hosting requires ongoing server maintenance, security patching, and Perl module dependency management that smaller IT teams find operationally burdensome, pushing them toward fully-managed SaaS alternatives.
  • RT lacks native integrations with popular enterprise tools—SolarWinds, Confluence, Slack, and Microsoft Teams require custom scripting or workarounds that teams without dedicated DevOps staff cannot sustain.
  • Teams that need visual Kanban boards, modern mobile apps, and a polished agent experience find RT's feature set insufficient and migrate to platforms purpose-built for those workflows.

Choosing

Gorgias logo

Gorgias

What's pulling them in

  • Shopify-native integrations pull order details, shipment status, and return data directly into the ticket view, eliminating the need for agents to switch between apps.
  • Unlimited user seats mean growing support teams do not trigger billing changes; pricing scales only on billable ticket volume.
  • AI Agent automates responses to high-volume queries like order status and returns, measurably reducing the number of billable tickets each month.
  • Omnichannel inbox consolidates email, live chat, Facebook, Instagram, WhatsApp, SMS, and voice into a single threaded view.
  • SOC 2 Type II certification and GDPR-aligned data handling satisfy enterprise procurement requirements for customer support platforms.

Object mapping

How Request Tracker objects map to Gorgias

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

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

Request Tracker

Ticket

maps to

Gorgias

Ticket

1:1
Fully supported

RT Tickets map directly to Gorgias Tickets. We extract Subject, Status, Priority, Requestor email, Owner email, Queue name, Created date, Resolved date, and the full transaction log (replies, comments, field changes, status transitions) from RT's Transactions table. The RT Status values (new, open, stalled, resolved, rejected, deleted) map to Gorgias Status values (open, pending, solved, spam) using a status-mapping table defined during scoping. RT Priority (0-9) maps to Gorgias Priority (low, medium, high, urgent) with the threshold values configurable per the customer's priority scale. External ID on the Gorgias Ticket is set to the RT ticket ID for cross-system reference.

Request Tracker

User (Privileged + Unprivileged)

maps to

Gorgias

Customer

1:1
Fully supported

RT's Privileged users (staff with login access) and Unprivileged users (requestors) both map to Gorgias Customers. We extract Name, Email, Phone, Organization, and disabled status from RT's Users table. Inactive or disabled RT users are imported as inactive Gorgias customers. If the customer's RT instance uses a separate requestor table, we reconcile against the Users table to avoid duplicate customer records when a requestor also appears as a Privileged user. External ID is set to the RT user ID for lookup resolution.

Request Tracker

Queue

maps to

Gorgias

Team

1:many
Fully supported

RT Queues define organizational silos and ticket routing; each queue has its own name, description, SLA configuration, and access control model. RT queues map to Gorgias Teams. If a single RT queue contains multiple ticket categories that the customer wants siloed in Gorgias (for example, an IT queue that handles both hardware and software requests), we split them into separate Gorgias Teams based on RT Custom Field values, tag patterns, or subject-line keywords defined during scoping. This split requires the customer to confirm the routing logic before migration runs.

Request Tracker

Custom Field Definition

maps to

Gorgias

Custom Field Definition

lossy
Fully supported

RT Custom Fields of type Select-Box, Freeform text, Date, IP Address, and Number map to Gorgias Custom Fields of equivalent type (string, boolean, date, number, select, multi-select). RT's global vs queue-specific scoping maps to Gorgias's global vs per-ticket-field scoping. Multi-select Custom Fields in RT (values stored as a pipe-delimited string in the RT database) map to Gorgias multi-select custom fields. Date Custom Fields in RT (stored as Unix epoch) convert to ISO 8601 strings in Gorgias. We pre-create all Custom Field definitions in the Gorgias admin panel before ticket import begins, because Gorgias Custom Fields must exist before they can be populated during ticket creation.

Request Tracker

Custom Field Values

maps to

Gorgias

Custom Field Values

1:1
Fully supported

Custom Field values attached to RT Tickets are resolved via the RT TicketsCustomFieldValues table and inserted into Gorgias Tickets at import time using the Gorgias Tickets API with the custom_field_definitions referenced by their external_id (RT CF ID). Select-box values are mapped by label match; freeform text migrates as-is; date values are epoch-to-ISO converted; IP Address values migrate as string. If a Custom Field option value in RT does not exist in the destination Gorgias Custom Field definition, we create it dynamically during migration to prevent silent data loss.

Request Tracker

Transaction (Reply/Comment)

maps to

Gorgias

Comment

1:1
Fully supported

Every RT ticket action—reply, comment, status change, field update—creates a Transaction record. Replies (which are visible to the requestor) map to Gorgias public Comments; Comments (internal notes) map to Gorgias private Notes. We export the full transaction log ordered by Created date and thread them back into the destination ticket in chronological order, preserving the agent-requestor conversation flow that Gorgias displays in its conversation timeline. The RT transaction author (Creator) maps to the Gorgias Comment author via the User-to-Customer email lookup.

Request Tracker

Attachment (blob)

maps to

Gorgias

Attachment

1:1
Fully supported

RT attachments are stored as base64-encoded binary blobs in the Attachments table, linked to Transactions by ID. There is no filesystem path. We run a targeted SQL export per ticket's attachment IDs, decode the base64 blob, reconstruct the original filename and MIME type from RT's ContentType and Filename columns, and attach the resulting file to the corresponding Gorgias ticket conversation thread using the Gorgias REST API multipart upload. Attachments without a filename (RT-generated inline content) are named using the transaction ID for traceability. We flag any blob that exceeds 50 MB as a separate large-file ingestion requiring dedicated handling.

Request Tracker

Article (Knowledge Base)

maps to

Gorgias

Article

1:1
Fully supported

RT Articles live in classes (e.g., General) with Name, Summary, Content, and Custom Fields. We export Article data as structured JSON using RT::Extension::Import::CSV with the --article-class flag. Articles map to Gorgias Help Center Articles within a Folder. The RT Article Synopsis maps to the Gorgias Article Title; RT Article Content (which may contain embedded commas and HTML) maps to the Gorgias Article body. Custom Fields on Articles map using the same lookup resolution as ticket Custom Fields. RT Article classes map to Gorgias Folders or Top-level Categories depending on the customer's desired knowledge-base structure.

Request Tracker

Template

maps to

Gorgias

Macro

1:1
Fully supported

RT Templates define email and notification text used by Scrips, with token placeholders and conditional logic. We export Template names and content as text data. Templates that represent canned response patterns (without conditional Scrip logic) migrate to Gorgias Macros. Templates that depend on Scrip conditional branching are documented in the rebuild handoff with a note that the branching logic requires rebuilding as a Gorgias Rule. Template token placeholders (e.g., {$Ticket->Subject}) are preserved as plain text in the Macro body; the customer reviews and replaces tokens with Gorgias's liquid-style variable syntax during the post-migration rebuild pass.

Request Tracker

GroupMembers

maps to

Gorgias

Team Membership

1:1
Fully supported

RT Group memberships do not export in a single flat file—they are stored in the GroupMembers table with a compound key of GroupId and MemberId. We reconstruct group membership by querying GroupMembers joined to Users, producing a per-user list of group names and roles. RT AdminCc and Cc role assignments on tickets are preserved as Gorgias Ticket Team assignments and CC assignments on the ticket. If a Gorgias Team has no members mapped from an RT Group, we flag it for the customer's admin to populate post-migration.

Request Tracker

Estimated-minutes + Worked-minutes

maps to

Gorgias

Time Logs

1:1
Fully supported

RT stores Estimated-minutes and Worked-minutes natively on each ticket, and RT-Extension-TimeTracking adds structured time-entry records with User, Ticket, Time Worked, and Note. We export both native RT time fields and TimeTracking extension entries. Native Estimated and Worked minutes migrate to Gorgias Time Logs attached to the relevant ticket, with the original RT timestamp preserved as the log date. RT time-entry notes migrate as the Gorgias Time Log description.

Request Tracker

Asset (RT-Extension-Assets)

maps to

Gorgias

Customer Custom Fields or External Reference

1:1
Fully supported

RT Assets catalogs configuration items (servers, software licenses, hardware) linked to Contacts. If the destination Gorgias account uses the Integrations module to connect to a CMDB or ERP system, we map RT Asset external IDs into a Gorgias Custom Field on the linked Customer record for cross-referencing. We do not migrate RT Assets as standalone Gorgias records because Gorgias does not have a native CMDB or Asset Inventory object; the asset linkage is preserved as a reference string or external ID stored on the associated Customer record.

Request Tracker

Scrip

maps to

Gorgias

Not Migrated

1:1
Fully supported

RT Scrips are server-side Perl automation rules triggered by ticket lifecycle events at the queue level. They are code artifacts tied to a specific RT instance's codebase and cannot be meaningfully migrated to Gorgias. We export the full list of Scrips (name, description, stage, condition, action) to a written Scrip Inventory document that the customer's admin uses to rebuild equivalent Rules and Macros in Gorgias. Scrips that use RT::Logger, RT::Extension::SLA, or other community extensions are flagged with the specific extension dependency so the admin knows which Gorgias Rules may require third-party app integrations.

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.

Request Tracker logo

Request Tracker gotchas

Medium

Tab-delimited export instead of CSV

Medium

Attachments stored as database blobs

High

RT-to-RT upgrades require original RT directory

High

No native bulk REST API

Low

Comma-heavy article content breaks CSV imports

Gorgias logo

Gorgias gotchas

High

AI Agent adds outcome-based fees on top of billable ticket costs

High

Overage billing for tickets scales nonlinearly

Medium

API rate limits restrict bulk export throughput

Medium

Agent data visibility cannot be restricted by role for GDPR use cases

Low

Knowledge Base translations require separate API calls per locale

Pair-specific challenges

  • RT exports tab-delimited text, not RFC-compliant CSV

    RT's built-in spreadsheet export produces tab-delimited text rather than CSV. Fields containing commas or newlines are not always quoted consistently, which breaks naive CSV parsers and causes record misalignment during field mapping. We pre-process the raw RT export through a sanitizer that detects delimiter collisions, adds quoting where needed, converts the output to proper CSV, and validates row counts against the RT database before mapping it into the migration pipeline. This step adds a preprocessing pass to the discovery timeline but prevents silent data corruption during the actual migration run.

  • Gorgias automations must be disabled before import

    Gorgias applies Rules (if-this-then-that automations) to incoming tickets in real time, including tagging, assignment, and routing Rules. If Rules are active during migration, they fire on the imported records and may change ticket status, reassign ownership, or apply tags that conflict with the migrated RT data. We disable all active Gorgias Rules before migration begins (Automation > Rules > toggle off) and document the active Rules list so they can be selectively re-enabled after the migration validation pass. For customers with a large Rules library, we recommend a phased re-enablement starting with the highest-priority routing Rules.

  • RT has no native bulk REST API

    RT does not publish a bulk or batch REST API endpoint for ticket exports. All programmatic data extraction relies on the tab-delimited spreadsheet export, direct database access, or community scripts. For self-hosted RT instances with database access, we run targeted SQL queries that bypass the UI export bottleneck. For cloud-hosted RT instances where direct DB access is unavailable, we use the spreadsheet export workaround combined with targeted REST API calls for user and Custom Field lookups. Migration timelines scale directly with data volume when no bulk API is available—we advise customers upfront that extraction time for accounts with more than 50,000 tickets may extend the discovery phase by one to two weeks.

  • RT Scrips and conditional Templates do not migrate as automation

    RT Scrips (Perl automation code) and Templates with conditional branching are not translatable to Gorgias Rules and Macros. We export a written inventory of every active RT Scrip (name, queue, trigger event, condition, action code) and every Template (name, content, token placeholders) with a note on which ones require manual rebuild in Gorgias. Templates without branching logic migrate to Gorgias Macros as static text. Templates with RT-specific conditional syntax ($Ticket->Status eq 'open') are flagged and must be rebuilt using Gorgias's Rules condition builder. Scrips that rely on RT::Extension::SLA or RT::Extension::NotifyOwners require a Gorgias equivalent that may need a third-party integration (e.g., a SLA app from the Gorgias App Store).

  • Gorgias does not have a native RT importer

    Gorgias ships a native import tool for Zendesk, Help Scout, and a few other platforms, but not for Request Tracker. The migration from RT requires a custom extraction-to-API pipeline built around RT's tab-delimited export and direct database queries. We build this pipeline per migration based on the specific RT version (4.2, 4.4, 5.0), database schema variant, and the presence of community extensions (TimeTracking, Assets, SLA). There is no off-the-shelf RT-to-Gorgias migration template; we validate the schema during discovery and adjust the extraction queries accordingly.

Migration approach

Six steps for a successful Request Tracker to Gorgias data migration

  1. Discovery and extraction path confirmation

    We audit the source RT instance across version (4.2, 4.4, or 5.0), deployment type (self-hosted or cloud-hosted), community extension inventory (TimeTracking, Assets, SLA), queue count, custom field count, and data volume estimates for Tickets, Transactions, Attachments, Articles, and Users. For self-hosted RT, we request read-only database credentials and validate the schema against the RT version's documented tables. For cloud-hosted RT, we confirm access to the tab-delimited export path and validate that attachment blobs are accessible via the REST API or supplemental database export. The discovery output is a written Migration Scope Document covering extraction path, schema mapping, and any extension-specific handling requirements.

  2. Gorgias destination schema provisioning

    Before any data migrates, we configure the Gorgias destination account. This includes provisioning Custom Field definitions matching the RT Custom Field set (string, boolean, date, number, select, multi-select), creating Teams mapped from RT Queues (with queue-split rules documented for the customer's confirmation), importing or creating Gorgias Users matched to RT Privileged users by email, and disabling all active Rules and Macros that would fire on imported records. We use the Gorgias REST API for all destination-side provisioning. If the customer uses Gorgias's Help Center module, we create the Folder structure mapped from RT Article classes.

  3. RT data extraction and preprocessing

    For self-hosted RT, we run targeted SQL queries against the RT database to extract Tickets, Transactions, Attachments, Users, Custom Field values, GroupMembers, and Articles. We pre-process the tab-delimited export (if used as a fallback) into RFC-compliant CSV with delimiter sanitization. Attachment blobs are decoded from base64, filenames and MIME types reconstructed, and files staged for re-upload. For RT-Extension-TimeTracking data, we run the extension's dedicated export query. We emit a per-table row-count report and share it with the customer for reconciliation against RT's admin interface counts before proceeding.

  4. Sandbox migration and mapping validation

    We run a full migration into a Gorgias sandbox or a shadow production account using a representative data sample (typically the 100 most recent tickets and a sample of each queue). The customer's lead admin reviews ticket formatting, Custom Field population, attachment display, and transaction thread ordering in the Gorgias UI. We correct any field-mapping errors, Custom Field type mismatches, and status-label discrepancies identified during the review pass before running the full production migration. Any queue-split logic is validated here with the customer's confirmation.

  5. Full production migration in dependency order

    We run production migration in record-dependency order: Users and Customers first (because they are referenced by Tickets), Custom Field definitions (pre-created and validated), Tickets with Custom Field values and transaction threads (in chronological order by Created date), Attachments (uploaded per ticket after the ticket record exists in Gorgias), Articles to Help Center (after ticket migration confirms Custom Field schema stability), Time Logs, and Group/Team membership reconciliation last. Each phase emits a row-count reconciliation report. We apply the RT ticket ID as External ID on every Gorgias record for cross-system auditability.

  6. Cutover, delta sync, and automation rebuild handoff

    We freeze RT writes during the cutover window, run a delta migration of any records created or modified since the full migration started, then enable Gorgias as the system of record. We re-enable Gorgias Rules selectively (starting with routing and tagging Rules; SLA and escalation Rules re-enabled after the admin team's sign-off). We deliver the Scrip and Template Inventory document to the customer's admin with a rebuild guide mapping each RT Scrip to a Gorgias Rule or Macro equivalent. We support a one-week hypercare window for reconciliation issues raised by the support team during their first production week.

Platform deep dives

Context on both ends of the pair

Request Tracker logo

Request Tracker

Source

Strengths

  • Fully open source (GPL) with no feature-gating across plans—every capability is available on every tier.
  • Unlimited queues and custom lifecycles let a single instance handle multiple business processes simultaneously.
  • Deep Perl-based customization engine allows complete behavioral modification of ticket lifecycle logic.
  • Integrated email-driven workflow creates tickets from incoming emails and sends notifications from outgoing replies.
  • Long track record with an active community forum and 20+ years of documented migration and upgrade patterns.

Weaknesses

  • No native bulk REST API for automated data extraction—all exports require the tab-delimited spreadsheet workaround, direct database access, or community scripts.
  • Web UI is visually dated with a steep learning curve for non-technical staff compared to modern SaaS helpdesk products.
  • Self-hosted deployments require Linux server administration, Perl module management, and MTA configuration knowledge.
  • Limited native integrations with popular enterprise tools like Slack, Teams, and Confluence without custom development work.
  • Upgrade paths between major RT versions (e.g., 4.2 to 5.0) require careful database migration steps that are non-trivial for understaffed teams.
Gorgias logo

Gorgias

Destination

Strengths

  • Shopify and BigCommerce integrations surface order, return, and shipment data natively inside every ticket.
  • Unlimited agent seats remove per-user licensing friction as support teams grow.
  • AI Agent reduces billable ticket volume through automated resolution of high-frequency queries.
  • SOC 2 Type II certified with GDPR-aligned data handling for enterprise procurement readiness.
  • Omnichannel inbox aggregates email, live chat, Facebook, Instagram, WhatsApp, SMS, and voice into a single threaded view.

Weaknesses

  • Ticket-volume pricing with overage fees creates unpredictable monthly costs during seasonal traffic spikes.
  • Custom reporting is shallow; raw event-level data export for BI tooling is not natively supported.
  • Knowledge Base, Macros, and Rules lack simple export tooling, making competitive migrations complex.
  • GDPR compliance limitations mean customer data cannot be hidden from agents by role, blocking use by teams with freelance staff.
  • Performance and glitch reports emerge in G2 reviews at higher ticket volumes.

Complexity grading

How hard is this migration?

Moderate Helpdesk migration. 3 of 7 objects need a mapping; the rest are 1:1.

C

Overall complexity

Moderate migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Request Tracker and Gorgias.

  • Object compatibility

    C

    3 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

    Request Tracker: Not publicly documented.

  • Data volume sensitivity

    B

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

Estimator

Estimate your Request Tracker to Gorgias 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 Request Tracker to Gorgias data migrations

Answers to the questions buyers ask most during Request Tracker to Gorgias migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Request Tracker to Gorgias 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 four weeks for accounts under 10,000 tickets with no community extensions beyond TimeTracking. Migrations with more than 20 RT queues to remap, large attachment datasets (the RT Attachments table often spans multiple gigabytes), RT-Extension-Assets data, or a need to split a single RT queue into multiple Gorgias Teams move to six to ten weeks because of extraction time (RT has no bulk REST API), preprocessing, and queue-split validation. We advise customers early in discovery that RT extraction timelines scale with data volume.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Request Tracker.
Land in Gorgias, 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