Migrate your Cordial data
Enterprise messaging and email marketing CRM built for large retail brands with AI-powered personalization and dynamic audience segmentation.
In its favor
Why people choose Cordial
The signal that keeps Cordial on the shortlist. Sourced from G2, Capterra, and customer scoping calls.
Users consistently cite ease of use and smooth onboarding as top reasons for selecting Cordial, with the drag-and-drop Sculpt block editor reducing time-to-first-campaign for new teams.
The platform organizes campaigns, contacts, and automation logic in one consolidated workspace, eliminating the need to juggle multiple disconnected tools for email and SMS execution.
Cordial's flexible data model lets marketing teams add unlimited custom contact attributes without developer involvement, enabling rapid iteration on segmentation criteria.
Enterprise retail brands choose Cordial for its product-centric data architecture, treating product catalogs and variant-level SKU data as first-class objects rather than footnotes.
The helpful support staff and organized UI receive repeated positive mentions on review sites, making it accessible for teams without dedicated technical resources.
Some users report that complex reporting and advanced analytics require workarounds, with out-of-the-box dashboards feeling insufficient for deep performance analysis.
Scaling large contact databases can introduce latency in segment queries and campaign execution, particularly when audiences exceed several million records.
The drag-and-drop interface, while easy to use for basic campaigns, can become limiting when building sophisticated multi-step automation logic that requires more programmatic control.
Reasons to switch
Why people leave Cordial
The recurring reasons buyers give for replacing Cordial. Presented as facts, not knocks.
Platform scorecard
Strengths, weaknesses, and where Cordial fits
Grades across six dimensions, plus a SWOT-style view of where the platform shines and where it falls short.
SWOT — strengths, weaknesses, and use-case fit
Strengths
Weaknesses
Where it works
Where it struggles
Pricing tiers
Cordial pricing overview
Cordial does not publish pricing on its website. Plans are contact-based and tiered, with Enterprise pricing negotiated annually. Prospects typically engage with a sales representative for quotes based on contact volume and required features.
Starter
Tier 1 of 3
Not publicly listed
What's included
Need help selecting your CRM?
Book a free 30 minute consultationPricing is informational. FlitStack AI does not bill on Cordial's schedule — see our quote-based pricing →
What gets migrated
Cordial object support
Object-by-object support for Cordial migrations. Per-pair details surface during scoping.
Contacts
Fully supportedContacts are the primary collection in Cordial, stored with a flat attribute schema. We export all standard fields (email, first name, last name, etc.) plus every custom contact attribute stored on the contact record. Contacts are exported via the Contact Activity Export API with time-range filtering and CSV/JSON output options.
Contact Attributes (Custom Fields)
Fully supportedCordial supports unlimited custom contact attributes of types string, number, geo, and array. We map each attribute by its key name and preserve the type. Array-type attributes (e.g. favorite_colors as ['red','blue']) are exported as JSON arrays and flattened or kept intact depending on destination schema capability.
Lists
Fully supportedLists are sub-collections within the Contact collection. We export list membership as a boolean flag per list or as a separate lookup table, preserving which contacts belong to which static lists for re-creation in the destination system.
Products
Fully supportedProducts are stored as JSON objects in the products collection with standard fields productID, productName, price, and a variants array containing SKU and attribute pairs (color, size). We export the full nested product structure and flatten variants into separate rows if the destination requires a flat schema.
Channels
Mapping requiredChannels (email, SMS, etc.) are stored as sub-attributes on contacts indicating opt-in status and preferences per channel. We export channel preferences as separate boolean fields and flag any non-standard channel types that may not exist in the destination CRM.
Events / Contact Activities
Mapping requiredContact activities represent behavioral events (opens, clicks, purchases, custom events). Cordial supports custom event types. We export activity data via the Contact Activity Export API with time-range scoping, but large event histories may require pagination and multiple export jobs.
Orders
Mapping requiredOrders are not a native first-class object in Cordial's core schema but are often stored as custom attributes or linked via event data. We identify order-related attributes and custom event types and map them to the destination's order or transaction schema.
Segments / Audiences
Mapping requiredSegments in Cordial are dynamic rules-based audiences built from contact attributes and event conditions. We export segment definitions as rule summaries and flag which contacts currently match each segment, though the segment logic itself must be rebuilt in the destination platform.
Message Analytics
Mapping requiredMessage analytics (opens, clicks, bounces, unsubscribes) are available via the Message Analytics Export API. Experiment results are not exportable via API and must be captured manually from the UI. We export standard campaign metrics but note the experiment data limitation upfront.
Automation Workflows / Programs
Mapping requiredCordial's Programs organize campaigns and automation sequences. Workflow logic, triggers, and delay rules are not directly exportable via API. We document the program structure, trigger points, and step count to assist with manual rebuild planning.
| Object | Support | Notes |
|---|---|---|
| Contacts | Fully supported | Contacts are the primary collection in Cordial, stored with a flat attribute schema. We export all standard fields (email, first name, last name, etc.) plus every custom contact attribute stored on the contact record. Contacts are exported via the Contact Activity Export API with time-range filtering and CSV/JSON output options. |
| Contact Attributes (Custom Fields) | Fully supported | Cordial supports unlimited custom contact attributes of types string, number, geo, and array. We map each attribute by its key name and preserve the type. Array-type attributes (e.g. favorite_colors as ['red','blue']) are exported as JSON arrays and flattened or kept intact depending on destination schema capability. |
| Lists | Fully supported | Lists are sub-collections within the Contact collection. We export list membership as a boolean flag per list or as a separate lookup table, preserving which contacts belong to which static lists for re-creation in the destination system. |
| Products | Fully supported | Products are stored as JSON objects in the products collection with standard fields productID, productName, price, and a variants array containing SKU and attribute pairs (color, size). We export the full nested product structure and flatten variants into separate rows if the destination requires a flat schema. |
| Channels | Mapping required | Channels (email, SMS, etc.) are stored as sub-attributes on contacts indicating opt-in status and preferences per channel. We export channel preferences as separate boolean fields and flag any non-standard channel types that may not exist in the destination CRM. |
| Events / Contact Activities | Mapping required | Contact activities represent behavioral events (opens, clicks, purchases, custom events). Cordial supports custom event types. We export activity data via the Contact Activity Export API with time-range scoping, but large event histories may require pagination and multiple export jobs. |
| Orders | Mapping required | Orders are not a native first-class object in Cordial's core schema but are often stored as custom attributes or linked via event data. We identify order-related attributes and custom event types and map them to the destination's order or transaction schema. |
| Segments / Audiences | Mapping required | Segments in Cordial are dynamic rules-based audiences built from contact attributes and event conditions. We export segment definitions as rule summaries and flag which contacts currently match each segment, though the segment logic itself must be rebuilt in the destination platform. |
| Message Analytics | Mapping required | Message analytics (opens, clicks, bounces, unsubscribes) are available via the Message Analytics Export API. Experiment results are not exportable via API and must be captured manually from the UI. We export standard campaign metrics but note the experiment data limitation upfront. |
| Automation Workflows / Programs | Mapping required | Cordial's Programs organize campaigns and automation sequences. Workflow logic, triggers, and delay rules are not directly exportable via API. We document the program structure, trigger points, and step count to assist with manual rebuild planning. |
Gotchas
What to watch for in Cordial migrations
Issues we've hit on past Cordial migrations, tagged by severity. FlitStack AI handles every one — surfacing them up front because buyer engineering teams want to know.
Message experiment results are not API-exportable
Rate limits are method- and endpoint-specific
Custom contact attribute arrays require schema normalization
Products collection uses nested JSON with variants
| Severity | Issue |
|---|---|
| Medium | Message experiment results are not API-exportable |
| Medium | Rate limits are method- and endpoint-specific |
| Low | Custom contact attribute arrays require schema normalization |
| Low | Products collection uses nested JSON with variants |
Leaving Cordial?
Where Cordial customers move next
12 destinations Cordial can migrate to.
How a Cordial migration works
Four steps, Cordial-specific
Connect
HTTPS Basic Authentication with API key into Cordial. Scopes limited to read-only on the data we move.
Map
We translate Cordial-specific structures (custom fields, objects, value lists) to the destination's model.
Sample
Test with a 50–200 record subset to validate Cordial quirks before production.
Migrate
Full migration with Cordial rate-limit handling. Rollback available throughout.
FAQ
Cordial migration FAQ
Answers to the questions buyers ask most during Cordial migration scoping. Not seeing yours? Book a call.
Can't find your answer?
Walk through your Cordial migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationReady when you are
Migrate Cordial.
Without the rebuild.
Free scoping call with a migration engineer. Tell us about your Cordial setup and destination — written quote back within a business day.