charlieai.co  ›  docs  ›  migrate from klaviyo

Migrate from Klaviyo

One Klaviyo private API key. Charlie imports your contacts with their consent provenance, their recent engagement history, and — first of all — your unsubscribe and suppression lists. Nothing is emailed in the process.

What the importer moves

DataDetail
Suppressions firstUnsubscribed and suppressed profiles are pulled before any contacts, so nobody who opted out can slip through as a fresh import.
ContactsProfiles with email, name, country, language — and their consent status with provenance (when and how consent was given), which Charlie requires on every contact.
Engagement historyThe last 90 days of opened/clicked events per profile, aggregated into last-opened and last-clicked timestamps. This is what lets you segment "people who actually engage" from day one — and it's the last open data you'll have, since Charlie doesn't track opens going forward.

How it runs

  1. You provide a Klaviyo private API key (starts with pk_). It's used for the read-only pull and never stored in the clear.
  2. Dry run first. The engine executes every step — validation, dedupe, suppression checks, consent merge — without writing, and reports exact counts: how many contacts, how many skipped and why.
  3. Then the real import. Every contact passes email validation, the suppression gate, cross-source dedupe, and a consent merge. Klaviyo's rate limits are respected automatically; a large list takes minutes, not days.
  4. Audit log. The whole run is summarized in your workspace audit log — what came in, what was skipped, when.

Your AI can drive this conversationally once connected — "import my Klaviyo list, dry-run first, show me the counts."

Also: Mailchimp and CSV

The same engine has adapters for Mailchimp (API key, same suppression-first order) and plain CSV exports. CSV imports must include a consent source column — Charlie refuses contacts with no consent provenance, and purchased lists are not accepted under any adapter. That rule protects your deliverability as much as everyone else's.

The pricing you leave behind

Klaviyo prices by stored profiles, and since February 2025 that includes every active profile — suppressed, dormant, or not. Charlie prices by contacts you actually email each month. For most stores the migration maths looks like this:

Klaviyo (stored)Charlie (emailed)
List of 40,000, you email ~12,000 engaged≈ $600–720/mo (email plan, list prices as of July 2026)$149/mo (Growth)
List of 8,000, you email ~4,000≈ $150/mo$79/mo (Starter)

Full plan details on the pricing page; the honest feature-by-feature view is at Charlie vs Klaviyo — including what Klaviyo genuinely does better.

A sane migration path

  1. Keep Klaviyo running. Install Charlie's Shopify app (30-day free trial starts).
  2. Import via the wizard or your AI — suppressions, contacts, engagement history.
  3. Send yourself free test versions of your usual campaigns; check which tab they land in.
  4. Run your next real campaign through Charlie to an engaged segment. Compare orders, not opens.
  5. Move flows over one at a time (welcome → abandoned cart → post-purchase → win-back). Cancel Klaviyo when nothing depends on it.
No import needed to start looking. The template library and MCP read tools are free without an account — your AI can evaluate Charlie before a single contact moves.

Home · Template library · FAQ · How sending works · Pricing · Connect your AI · MCP · vs Klaviyo · vs Mailchimp · vs Omnisend · Privacy · DPA · Terms