Helpdesk migration

Migrate from Awesome Support to Intercom

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

Awesome Support logo

Awesome Support

Source

Intercom

Destination

Intercom logo

Compatibility

92%

11 of 12

objects map 1:1 between Awesome Support and Intercom.

Complexity

CModerate

Timeline

2-4 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Awesome Support to Intercom means leaving the WordPress plugin ecosystem for a dedicated SaaS support platform with native AI capabilities, multi-channel inbox, and a structured conversation data model. Awesome Support stores Tickets as WordPress custom post types, Responses as comments, and Custom Fields across multiple meta key namespaces gated by separate add-ons. There is no REST API in the free version, so extraction depends on either the paid REST API add-on or direct read-only queries against wp_posts and wp_postmeta. We enumerate all active add-ons during discovery, extract every relevant meta key prefix, and map the data to Intercom's Conversations, Contacts, and Custom Attributes model. Intercom's API requires contacts to exist before conversations, so import ordering is mandatory. We do not migrate WordPress plugins, Automations, or Rules; we deliver a written inventory of these for the customer to rebuild inside Intercom.

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

Awesome Support logo

Awesome Support

What's pushing teams away

  • The plugin changed ownership via auction, and support quality degraded significantly — one reviewer reported five years of cases with effectively no vendor response when things broke.
  • Frequent WordPress core and plugin updates cause conflicts that corrupt media libraries and break other plugins, creating maintenance overhead and instability.
  • Add-on fragmentation forces teams to purchase multiple premium bundles to get features that competitors bundle together, making the true cost higher than the headline price.
  • Lack of a reliable, well-documented REST API in the base install makes automated exports and integrations dependent on a paid add-on.
  • Multi-site WordPress environments and hosting conflicts often make the plugin behave unpredictably across different server configurations.

Choosing

Intercom logo

Intercom

What's pulling them in

  • Instant chat and message threading on websites and apps gives support teams a single inbox without context-switching, according to reviewers on Capterra and G2 who highlight fast response times as a primary benefit.
  • Fin AI handles repetitive inbound queries automatically, reducing agent workload measurably — G2 reviewers report fewer escalations and faster first-response times once Fin is configured.
  • Automation workflows (Outbound, Operator, and custom bots) allow teams to qualify leads and route tickets without manual intervention, appealing to growth-stage SaaS companies managing high ticket volumes.
  • Help center articles and self-service deflection are natively integrated, so knowledge base content and chat conversations live in the same workspace, simplifying reporting.
  • Multi-channel support (live chat, email, SMS, WhatsApp, Phone) consolidates customer touchpoints into one inbox, reducing the operational overhead of managing separate tools.

Object mapping

How Awesome Support objects map to Intercom

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

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

Awesome Support

Ticket

maps to

Intercom

Conversation

1:1
Fully supported

Awesome Support Tickets are custom post types (wp_posts, post_type 'ticket') and map to Intercom Conversations. The ticket ID, subject, creation date, and last-modified date migrate as the conversation id, title, created_at, and updated_at. We preserve original ticket URLs from WordPress in a custom attribute wpas_ticket_id__c for audit and cross-reference. Ticket status (Open, Pending, Closed, etc.) maps to Intercom's open, closed, and snoozed state plus a custom attribute for the original Awesome Support status label.

Awesome Support

Ticket Response (Public Reply)

maps to

Intercom

Message (reply type)

1:1
Fully supported

Public ticket responses stored as WordPress comments (wp_comments, comment_type 'comment') map to Intercom Messages of type comment. We resolve the agent or submitter identity against the migrated Contact or Teammate record and set the message author reference accordingly. The original comment date sets the message created_at timestamp. HTML content is preserved as-is; we validate that special characters and embedded images are re-uploaded or referenced correctly.

Awesome Support

Private Note

maps to

Intercom

Message (note type)

1:1
Fully supported

Private agent notes stored as wp_comments with comment_type 'wpas_note' or a similar internal flag map to Intercom Messages of type note. These are distinguishable from public responses by comment_type in the WordPress database. We preserve the note flag so internal context is not exposed to the end customer in Intercom. The original note author and timestamp migrate alongside the content.

Awesome Support

Customer (Registered User Submitter)

maps to

Intercom

Contact

1:1
Fully supported

Registered WordPress users who submitted tickets map to Intercom Contacts. We resolve by email address and carry across display name, email, and any user meta fields as Intercom custom attributes. The HubSpot-to-Intercom parallel pattern of pre-creating contacts before conversations applies here as well: contacts must exist before their associated ticket history is imported as conversations.

Awesome Support

Customer (Guest Submitter)

maps to

Intercom

Contact (email-only)

1:1
Fully supported

Guest ticket submitters lack a WordPress user account (no wp_users entry) and exist only in ticket meta (wpas_user_email, wpas_user_name). We extract these from wp_postmeta, create an Intercom Contact using the email as the primary identifier, and carry the guest name as a custom attribute. Guest contacts are a common data gap in WordPress helpdesk migrations; we flag any ticket with a guest submitter separately during scoping.

Awesome Support

Agent (WordPress User)

maps to

Intercom

Teammate

1:1
Fully supported

Awesome Support Agents are WordPress user accounts with the appropriate WordPress role or capability added by the plugin. We map wp_users to Intercom Teammates, preserving display_name, user_email, and the role assignment. If the destination Intercom workspace uses Teams (grouped inbox), we map the WordPress role to an Intercom Team. We resolve Teammates by email match and flag any Agent without a matching Intercom user for the customer's admin to provision before conversation import.

Awesome Support

Custom Field

maps to

Intercom

Custom Attribute

1:1
Fully supported

Awesome Support custom fields are stored in wp_postmeta with keys prefixed by wpas_ or the Custom Fields add-on namespace. We enumerate all custom field keys per ticket, map each to an Intercom custom attribute (created under Settings > Data > Custom Attributes before import), and handle field types: text maps to string, select to dropdown, checkbox to boolean, number to number, and taxonomy fields to string with comma-separated values. Add-on-specific custom fields (Gravity Forms, time tracking) use their own meta key prefixes and are enumerated separately during discovery.

Awesome Support

Tag

maps to

Intercom

Label

1:1
Fully supported

Tags are stored as WordPress post terms (wp_terms joined via wp_term_taxonomy where taxonomy = 'ticket_tag'). We export the full tag taxonomy and apply tags as Intercom Labels on the migrated Conversation. Labels appear in Intercom's conversation sidebar and filtering UI, giving the support team the same tag-based segmentation they relied on in Awesome Support.

Awesome Support

Custom Status Label

maps to

Intercom

Conversation State + Custom Attribute

lossy
Fully supported

Awesome Support allows renaming status labels via settings (e.g., renaming 'Open' to 'In Progress' or 'New' to 'Awaiting Customer'). We read the current status label configuration from wp_options and map renamed labels to Intercom conversation states (open, closed, snoozed) plus a custom attribute as_status__c carrying the original Awesome Support label for reporting continuity.

Awesome Support

File Attachment

maps to

Intercom

Attachment

1:1
Fully supported

Attachments are WordPress media items associated with the ticket post via wp_postmeta. We extract attachment URLs and re-upload them to Intercom's file storage, linking each file to the relevant Message in the migrated conversation. We validate attachment URLs during extraction, flag any that return 404 or redirect errors, and re-attach from a backup source or the original ticket email thread if available.

Awesome Support

Satisfaction Survey Result

maps to

Intercom

Custom Attribute (Contact or Conversation)

1:1
Fully supported

Satisfaction survey responses (star ratings and feedback text) are stored in wp_postmeta with a wpas_satisfaction_ prefix, but only when the Satisfaction Survey add-on is active. Not all Awesome Support installations have this add-on. We export available survey data and map ratings to a custom attribute csat_rating__c on the Contact and survey feedback text to csat_feedback__c. We confirm add-on status during discovery and exclude this object if the add-on is not present.

Awesome Support

Time Tracking Entry

maps to

Intercom

Custom Attribute or Note

1:1
Fully supported

Time Tracking is a separate add-on that stores billable hours against tickets in a dedicated meta key namespace or custom table. Entries include agent, duration, and optional billing notes. We export time entries as text notes appended to the conversation (internal note type) with the duration in HH:MM format and the billing note included. Intercom does not have a native billing or time-tracking object, so the representation is note-based rather than structured.

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.

Awesome Support logo

Awesome Support gotchas

High

No REST API in the free version blocks scripted migration

High

Ownership change via auction disrupted support continuity

Medium

Plugin updates corrupt WordPress media library

Medium

Add-on fragmentation spreads data across multiple schemas

Low

Guest ticket submitters lack a persistent contact record

Intercom logo

Intercom gotchas

High

S3 JSON export omits conversation transcripts

High

Workspace isolation prevents workflow migration

Medium

Fin AI resolution fees compound with automation success

Medium

Two-year conversation history limit on historical export

Low

Private app rate limits share workspace quota

Pair-specific challenges

  • REST API absent in free tier forces database extraction

    The REST API add-on is a paid extra. Without it, there is no programmatic export endpoint — migrations require read-only SQL against wp_posts, wp_postmeta, and wp_comments. We run those queries, parse all ticket post types and associated meta, and extract every meta key prefix from active add-ons. If the REST API add-on is present, we prefer it for cleaner data; if not, we document the extraction method during scoping and adjust the migration plan accordingly.

  • Intercom requires contacts created before conversations

    Intercom's API enforces a dependency order: every conversation must be linked to an existing Contact (identified by email or user_id). Attempting to import conversations before contacts are in place produces errors. We sequence the migration with Contacts loaded first, then Conversations referencing those contacts by email lookup. This mirrors Intercom's own migration documentation and the pattern described by Intercom partners handling Zendesk and Freshdesk migrations.

  • Add-on data spreads across multiple meta key namespaces

    Time tracking, satisfaction surveys, Gravity Forms data, and billing records each use a different meta key prefix or custom table. We enumerate all active add-ons from the WordPress plugin list during discovery, then query every relevant meta key prefix to ensure no add-on-gated data is missed. Migrations that assume a single meta key pattern for all custom fields routinely lose time tracking entries and survey results.

  • Fin AI cannot query custom attributes directly

    Intercom's Fin AI Agent resolves queries using the Knowledge Base and conversation context, but it cannot directly query custom attributes on Contacts or Conversations. If customer-facing automations depend on custom field values (product tier, contract value, priority level stored in Awesome Support custom fields), those automations must be rebuilt in Intercom using the Actions and Workflows builder rather than relying on Fin's natural-language routing. We flag any automation relying on custom attribute conditions during scoping.

  • EU and AU data residency limits affect Fin configuration

    Intercom's Fin AI Agent MCP server currently supports only US-hosted workspaces. EU and AU data residency regions do not return Fin-powered responses if the Data Connectors integration is used. For teams with GDPR compliance requirements or AU data sovereignty obligations, this is a configuration constraint to plan around before go-live. The conversational inbox and standard reporting function normally in all regions.

Migration approach

Six steps for a successful Awesome Support to Intercom data migration

  1. Discovery and add-on enumeration

    We enumerate all active WordPress plugins, identify which Awesome Support add-ons are present (Standard Bundle, Professional Bundle, REST API, Time Tracking, Satisfaction Survey, Gravity Forms), and document the meta key prefixes each add-on uses in wp_postmeta. We read the current status label configuration from wp_options, extract the full tag taxonomy, and confirm whether WooCommerce or EDD integration is active and what product associations exist in ticket meta.

  2. Data extraction strategy selection

    If the REST API add-on is active, we use it for structured extraction. If not, we run read-only SQL against wp_posts (post_type 'ticket'), wp_comments (linked to ticket IDs), wp_postmeta (all meta keys per ticket and per agent), wp_users (agent accounts), wp_terms and wp_term_taxonomy (tags), and wp_options (settings and label renames). We validate attachment URLs during extraction and flag any that are unreachable.

  3. Intercom workspace provisioning and schema preparation

    We create the Intercom custom attributes (Settings > Data > Custom Attributes) for every Awesome Support custom field before importing any data. We create any required Teams, and we configure the default assignment settings for unassigned tickets (Settings > Inbox Settings > Assignment Preferences) so that tickets without a mapped agent land correctly. If the customer plans to use Fin AI with the Knowledge Hub, we provision Articles as a placeholder for the help-center rebuild.

  4. Contact and Teammate import

    We run contact import first: registered WordPress users become Intercom Contacts by email, and guest submitters (extracted from ticket meta) become email-only Contacts. Agents become Intercom Teammates, mapped by email. Any Agent without a matching Intercom user is flagged for the customer to provision before conversation import proceeds. Contacts must be confirmed complete and reconciled before any conversation records are created.

  5. Conversation and message import

    We import conversations in dependency order: Ticket subject, status, and timestamps create the conversation record; public responses and private notes are imported as messages of the correct type (comment or note) with the author reference resolved to the imported Contact or Teammate. Tags apply as Labels on each conversation. Custom field values attach to the conversation record via the pre-created custom attributes. Attachments re-upload to Intercom and link to the relevant message.

  6. Cutover, validation, and handoff

    We run a final delta migration of any tickets modified during the extraction window, then hand off write control to Intercom. We deliver a written inventory of all migrated objects with record counts, a note of any add-on data that could not be mapped to an Intercom equivalent (time tracking entries as notes, survey results as attributes), and a written recommendation for rebuilding any status labels, canned responses, and automation rules inside Intercom. We do not rebuild automations as Intercom Workflows within the migration scope.

Platform deep dives

Context on both ends of the pair

Awesome Support logo

Awesome Support

Source

Strengths

  • Free core tier includes unlimited tickets, agents, and full ticket history with no per-seat cost.
  • Lifetime one-time purchase option eliminates recurring subscription billing for budget-conscious teams.
  • WooCommerce and EDD integration handles support tickets linked directly to orders and digital products.
  • 30+ add-ons allow granular feature selection so teams pay only for what they need.
  • REST API add-on (when active) provides a documented endpoint surface for automated exports.

Weaknesses

  • No built-in REST API in the free version means migrations without the API add-on require direct WordPress database reads.
  • Frequent plugin updates create compatibility risk with WordPress core and other installed plugins.
  • Add-on proliferation means the real cost is higher than the base price, with features split across multiple bundles.
  • Support quality and development continuity became unreliable after the product changed ownership.
  • WordPress hosting dependency means performance and reliability are constrained by the hosting environment, not the plugin vendor.
Intercom logo

Intercom

Destination

Strengths

  • Integrated AI agent (Fin) for automated resolution with per-resolution billing that rewards high automation rates.
  • Multi-channel inbox consolidating live chat, email, SMS, WhatsApp, and Phone into a single threaded view.
  • Native help center with articles, collections, and self-service deflection capabilities.
  • Workflow automation for routing, qualification, and proactive outbound messaging across channels.
  • Strong API ecosystem with 10,000 req/min rate limits for private apps enabling high-throughput migration pipelines.

Weaknesses

  • Pricing model compounds with seat count, AI resolution fees, channel costs, and multiple add-ons, making total cost hard to predict.
  • Workspace-level isolation prevents moving workflows or content between environments, requiring manual rebuilds.
  • S3 JSON export deliberately excludes conversation transcripts, necessitating REST API calls for full message history.
  • Outages are reported as frequent enough to be a concern for always-on support operations.
  • Setup complexity means teams often require internal guidance or professional services to configure bots and automation correctly.

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 Awesome Support and Intercom.

  • 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

    Awesome Support: Not publicly documented.

  • Data volume sensitivity

    B

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

Estimator

Estimate your Awesome Support to Intercom 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 Awesome Support to Intercom data migrations

Answers to the questions buyers ask most during Awesome Support to Intercom migration scoping. Not seeing yours? Book a call.

Can't find your answer?

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

Book a free 30 minute consultation

Migrations under 5,000 tickets with the REST API add-on active typically complete in two to four weeks. Larger migrations (over 10,000 tickets) or installations with multiple active add-ons requiring separate meta key extraction move to five to eight weeks because each add-on introduces additional discovery, enumeration, and data mapping work. Parallel Intercom partner estimates for comparable ticket volumes (15,000-20,000 records) suggest one to two days for the actual migration run, with scoping and validation adding the remaining weeks.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Awesome Support.
Land in Intercom, 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