PlainFunnels

Home / Guides

Moving from Kartra, ClickFunnels, Kajabi or another platform

What you will have at the end

Your business running on systeme.io, moved in the order systeme.io's migration guides set out, with your contact list brought across and your sending warmed up before you email everyone.

Before you start: decide who does the moving

You can move your business yourself, or have systeme.io's team do it for you.

Having systeme.io do it costs nothing extra on the Unlimited monthly plan ($97 a month) or on any annual plan.

Once you are on one of those plans, you contact support, and they pass the request to the migration team. All content is moved by hand.

The migration page names the platforms the team moves businesses from: ClickFunnels, Kajabi, Teachable, Kartra, Podia, Mailchimp, ActiveCampaign, Keap, WordPress/WooCommerce, and most other major online business platforms. If yours is not on that list, it says to contact support before you sign up, to confirm your setup can be migrated.

Two things are worth knowing before you ask.

  • What the team needs from you. The help centre says it asks for your old account's login details to put you in the queue, then uses them to copy your content when your turn comes. systeme.io's migration page puts it differently: screenshots, export files, or a read-only login where available.
  • How long it takes. The help centre gives 17 days on average, depending on how much you have and how complex it is. The migration page says a simple move, such as one funnel, an email list and a few products, typically takes 2 to 5 business days, and a larger one can take 1 to 2 weeks. The team gives a written estimate after reviewing your setup. Both timings are systeme.io's own. Is the free migration actually free? sets them side by side.

Your old account is not changed, because the team only copies your content from it. The migration page says your old platform stays live while the team works in your new systeme.io account, so you do not need to cancel it before the move starts. Cancel the old tools only once you have confirmed everything is working in systeme.io.

While the team works, you can use systeme.io, but do not edit the pages it is creating, or the content on your old platform that it is copying.

The platform guides describe the order systeme.io's own team works in, and none of them sets out one for a move you do yourself. If that is your route, this guide suggests following theirs.

What comes across

The help centre lists six things the migration includes, depending on your plan's limits: contacts, sales funnel pages, blogs and articles, courses, emails and campaigns, and automation. What actually moves when you migrate covers what that list leaves unsettled, and how to check your own content before you pay.

The platform guides add detail on courses, and most of them cover physical products too.

  • Courses are moved individually, with their modules, lectures and quizzes, then linked to their sales pages. If you are rebuilding a course yourself, moving a course into systeme.io covers it.
  • Physical products are reproduced with details such as their name, description, SKUs, tax, currency, price and images.

The order to move things in

systeme.io's guides for Kartra, ClickFunnels and Kajabi set out the same nine steps, in this order.

  1. Sales funnel pages
  2. Blog pages and posts
  3. Courses
  4. Physical products
  5. Newsletters and campaigns
  6. Contact lists and tags
  7. Automations
  8. Your domain name
  9. Students into courses

systeme.io says sales funnels are at the heart of its customers' content, and it generally moves them first to get them online quickly. Websites generally move through the blog step, using the same process as funnels.

If your old tool kept forms in a separate area, in systeme.io they are built into the sales funnel pages themselves.

The GoHighLevel guide has no blog step, so it runs to eight. The Podia guide has no physical products step and no separate automations step, so it runs to seven: it says the automations that send your newsletters and campaigns are created at the same time as the newsletters and campaigns. Apart from those differences, the five guides list their steps in the same order. What order should I migrate things in? has the full table, with the reasons for what goes first and what goes last.

Moving your contact list

Even if you use the migration service, you can import your list yourself instead of leaving it to a migration manager. Either way, how clean the list is matters: inactive or invalid addresses can cause bounces, and systeme.io says a high bounce rate reduces the deliverability of your future emails.

  1. Export it. Take your contacts out of your old tool as a CSV file. In Kartra, the export feature produces one in a few seconds.
  2. Clean it before it goes anywhere. Take out duplicates and invalid addresses, along with contacts who have gone inactive. If your old tool cannot filter them out, use an email verification service. By systeme.io's description, an active contact is generally someone who has opened or clicked your emails recently, for example in the last 30 to 90 days, and has neither bounced nor reported your emails as spam.
  3. Leave unsubscribed contacts unsubscribed. Do not reactivate anyone who unsubscribed or went inactive. systeme.io's article on open rates says not to import unsubscribed contacts at all. Its article on migrating without hurting deliverability allows it: imported unsubscribed contacts are given an unsubscribed status and receive nothing through the platform.
  4. Keep proof of consent. Only import people who explicitly agreed to receive your emails, and keep the evidence, because systeme.io's team may ask for it.
  5. Get the file right. systeme.io only accepts CSV files. Save yours as UTF-8 so characters do not arrive corrupted, and label each column. The email address is required, and fields such as first name, last name and phone number are optional.
  6. Import it. Go to CRM, then Contacts, then Import contacts. Choose the CSV delimiter and select your file. Pick a tag if you want one. A source tag such as migration_2026 lets you track how these contacts behave after the migration. If you want to add the contacts to a campaign as well, pick the campaign too. Click Next, then choose what each column holds. If you picked a campaign, you must also map two more columns: the campaign step number from your previous system, and the date each contact received their last email. Then click Import.
  7. Read the import report. systeme.io provides a summary of the contacts imported and any errors, and says to analyse it carefully. What is the safest way to import an old list? goes into more detail.
  8. Import big lists in batches, and wait before a big send. If you have thousands of contacts, import them in small groups. Avoid sending a massive campaign straight after importing: systeme.io says to allow 24 to 48 hours for the servers to process your new contacts.

The platform guides, which describe the team's own work, say the list goes to the deliverability team before it is imported, and they contact you to verify it. Once it is approved, the contacts and their tags are imported. The help centre's free migration article says a contact list imported as part of a migration is checked by the team before anything is sent, with a short form to confirm the contacts' compliance and consent.

Automations, then your domain

Automations are rebuilt in the Automations section, as rules and workflows. Each platform works differently, so systeme.io recreates them to achieve the same results. What is a workflow, and how is it different from an automation rule? explains the two.

Your domain comes near the end. The migration page describes switching your domain and links to point to systeme.io once the migration is complete. Connecting it means your old domain name can be used in systeme.io, and your URLs can be personalised to keep the same structure and links they had before. Authenticating it generates the DKIM or SPF records for your domain, which helps improve your deliverability.

systeme.io's article on connecting a root domain, such as www.domain.com, notes that a domain name can only be used for one website. It says that if the root domain is already assigned to an external website, it will no longer be available once it is added to systeme.io. That applies if your old platform still runs a website on that domain.

Students last

Students come last, once your contact list is imported and your URLs are up to date with your domain name. An automation enrols each one in their course, based on the tags on their contact.

If your past students have not had an email from you in a while, bring them across gradually. Adding a contact to a course sends them an automatic email with a login link, and to avoid a surge of bounces from inactive addresses, systeme.io strongly recommends staggered imports.

Warm up before you email everyone

Switching your email sending to a new platform creates a new sender profile. Even with the same domain and the same content, your reputation with email providers resets, and it takes time to rebuild. Until the new profile is established, your open rate may go up or down. Will migrating hurt my email deliverability? explains why.

So build up slowly. Start with your most engaged contacts and raise the daily volume gradually, rather than sending large batches straight away.

systeme.io's example plan for a list of more than 5,000 contacts runs over 7 to 14 days.

DaysSend to
1 to 2500 highly engaged contacts, who opened or clicked in the last 30 days
3 to 4900 contacts, still highly engaged
5 to 61,500 contacts, adding people who opened in the last 60 days
7 to 92,500 to 4,000 contacts, adding moderately active ones
10 to 14The whole list, leaving out long-term inactive addresses

The same article also shows a faster day-by-day version that reaches the whole list by day 9.

While you warm up, systeme.io's advice is to:

  • Send test campaigns to small segments.
  • Avoid re-engagement campaigns to inactive contacts during the initial period.
  • Use a dedicated sender address, such as news@yourdomain.com. If your current domain and address already have a good reputation, systeme.io's open rate article says not to change them.
  • Create a Google Postmaster Tools account.

It also gives figures for the numbers to watch.

Numbersysteme.io's figure
Open rateAbove 20%, which it calls a good average
Click-through rateAbove 2%, depending on the type of campaign
Bounce rateBelow 2%
Spam complaint rateBelow 0.1%

What the migration guides do not cover

Gaps to plan around:

  • Customers on a subscription. The migration page's table says customer records are imported as contacts in the CRM. It marks payment and transaction history as included too, but its note says that history stays with your original payment processor. None of the migration pages read for this guide says what happens to a subscription a customer is still paying through your old platform.
  • Old addresses that change. The platform guides cover keeping your old URL structure at the domain step, but none of them mentions redirecting an old address that does change. If I change a page's URL path, what happens to the old link? explains what happens to an old address inside systeme.io.
  • Platforms without a guide. If you are moving from a platform other than ClickFunnels, Kartra, Kajabi, Podia or GoHighLevel, the help centre's migrating section has no platform guide for it, even if the migration page lists it.

Where to go next

After the migration, systeme.io's list migration article suggests setting up welcome sequences for your migrated contacts, to improve engagement. The welcome sequence guide builds one, and shows how to add people who are already on your list.

How I checked this guide

Nothing on this site is written from memory. These are the sources I checked to write this guide, and the date I checked them.

Checked on

Did this guide help?

Answers this guide leans on