Switching

Ask them to prove it
on your actual file

Every membership platform says migration is easy. Here is a free tool that reads your export and tells you the truth about it — before you talk to anyone, including us. The importer itself opens in October.

Drop your CSV exports here

or

One file or several — whatever your system gives you. We work out what each one is from the columns, so the file names do not matter.

Nothing is uploaded. This runs inside your browser — your data never leaves this computer, and there is no account to create. Open your browser tools and watch: no request is made.

The importer opens in October

In October you will be able to bring your members over yourself, during your free trial. Before anything is written, you will see exactly what it will create — and if you change your mind afterwards, one click will take the whole import back out.

  1. Drop in your export. CSV or Excel, one file or several. The file itself is not kept.
  2. Confirm what each column is. It suggests a match for every column; you decide.
  3. See your families rebuilt, with the rule it used to group them, in one sentence.
  4. Match each status word in your file to Active, Suspended or Inactive.
  5. Review the real result — every family and member it will create — then import.
  6. Undo it in one click if you change your mind.

It will bring across families, the people who pay, members, their status, and the dates each member joined, left and last visited — so your retention reports are right from the first day. What each member paid in your old system comes across for your reference only, and is never charged. The importer is free.

Why we give this away

Moving data between membership systems is never automatic, because no two systems store a family, a membership status or a payment the same way. Someone has to make decisions about your data. The only real question is whether those decisions are made deliberately, or guessed by an importer that fails quietly.

A bad import is worse than no import. If your records do not move, you know it. If they move badly, you believe they are fine — until a parent is billed the wrong amount, a grading history turns out to be missing, or a report is wrong and nobody can say why.

So we would rather show you the awkward parts of your own data first, while you are still deciding.

What the checker actually does

You export from your current system and drop the file above. It is read in your browser — nothing is uploaded, nothing reaches us, and there is no account to create. It works out what it is looking at from the columns, so the file names do not matter.

  • Members that belong to no family. The most common problem in a real export, and the most expensive to find late. A member with no household loads, looks correct, and then bills separately from the rest of the family.
  • Duplicate records, where one row would silently overwrite another.
  • Ambiguous dates. 03/04/2019 is the third of April in one country and the fourth of March in another, and nothing in the file says which. It flags them rather than picking.
  • Your status words — Active, Frozen, Trial, Cancelled, whatever you use — listed so each can be mapped by a person.
  • How full each column is. If phone numbers are 12% populated, better to know now.

It gives you three lists: what must be fixed, what needs a decision from you, and what is merely worth a look.

Your system stores members. We store households.

Almost every system in this market keeps a list of people, each with a note about who pays for them. It knows that Aiden is paid for by Maria. It does not really know that Aiden, Sofia and Maria are one family with one bill — that idea does not exist in it, so it is not in the export either.

Rebuilding that is most of the work of moving. The checker does it in front of you: it finds whatever your file uses to tie people together — an account number, the payer's email, a family name, or a shared phone and surname — groups your people by it, and tells you how many households came out and how many rows it could not place.

It also separates the adults who only pay from the adults who payand train. That distinction is worth money: the first become contacts on the family and are not billable, the second are one contact and one member, counted once. Getting it wrong is the classic way a first invoice comes out too high.

The one that decides your invoice

Your rate here is based on your active and suspended members. So a member marked Frozen or On hold in your current system might or might not count, depending on what that word means in your business.

We will not guess at that. The checker lists every status word in your file, and each one is matched by a person before anything is loaded — because the alternative is somebody's first invoice being wrong, and that is not a mistake worth being efficient about.

Where we are honest

Until the importer opens in October, bringing records across is manual, and the checker above is how you find out what moving your file involves — before you commit rather than after.

We do not move stored card details, and no vendor should. Your members re-enter them once with your payment provider. Anything else would mean a software company handling card data that was never theirs to hold.

Questions

Can you import from Kicksite, Jackrabbit, Zen Planner, Mindbody or PushPress?
All of them let you export your members to a spreadsheet, and that is what we work from. There is no one-click connector to any of them. What the checker does is read your actual export and tell you what maps cleanly and what does not.
What does not come across?
Stored card details, and that is deliberate — nobody should move those. Your members re-enter payment details once, with your payment provider, and that is the only safe way it can work. Attendance history and payment history will not come across either; the importer will bring each member's last visit, so nobody looks absent since the day they joined.
Will my member statuses transfer correctly?
Only if a person maps them, which is why the validator lists every status word in your file rather than guessing. Your rate here depends on active and suspended members, so mapping a frozen or trial member wrongly would change your first invoice. We will not guess at that, and you should be suspicious of anything that does.
How long does it take?
It depends almost entirely on how clean the export is, which is exactly what the validator tells you before anyone commits to a date. A tidy file from a system that exports properly is quick. A file with orphaned members and three different date formats is not, and we would rather you knew that at the start.
What does it cost?
Nothing. When the importer opens in October it will be included, during your trial and after it, at any size.
Will my families get an email when I import them?
No. The import itself will send nothing. Before you import, it will also show you whether any of your own automated emails — a welcome email, for example — would reach the people you are bringing in.
Do I have to move everything at once?
No, and often you should not. The trial runs 30 days with every feature switched on, so bringing one program across and running it alongside what you have is a more honest test than any demo — including ours.

Start with your own data

Run the checker on your export. If it comes back clean, the trial is 30 days with no card. If it does not, the lists above show exactly what to fix first.

Prefer a terminal? The same checks run from the command line — validate.mjs and core.mjs in one folder, then node validate.mjs ./my-export. Both use the identical core, so they cannot disagree about your file.