Learn how to plan and run your switch from Acuity to Session - what to set up in advance, what to do on the day itself, and a ready-to-send email for your customers.
Most of a switch happens before switch day - sessions, prices and Stripe are all things you can set up whenever you have time. Switch day itself is short and focused, and it runs in a set order: stop Acuity taking anything new, point your links at Session, run one final export and import it, press Go live, and send one email. The order matters - the import has to come after Acuity has stopped, or anything it sells in between is lost. This article walks through both halves in order. For the full mechanics of the import wizard itself, see importing data - this article covers the Acuity-specific planning and prep around it.

Before you start
Do these whenever suits you - none of them need to wait for switch day, and doing them early means switch day itself is just the data and the announcement.
1. Schedule your sessions to match Acuity
Set up your sessions in Session with the same days, times, durations and locations they run on in Acuity right now. This matters because your imported bookings - past and upcoming - are matched onto Session sessions by their date and time, so if your Session schedule doesn't line up with reality, imported bookings can land in the wrong place or fail to match at all.
This may already be mostly done. If you gave Session your Acuity link when you signed up, it read your timetable and built your sessions, prices and times from it - so this step is checking and correcting rather than building from scratch. Session lengths and price names are the two worth looking at first, and anything Session was unsure about is noted on the session it belongs to. See set up your account.
- 1Recreate each Acuity appointment type as a session in Session, with a repeating schedule that matches its real days and times.
- 2Add one-off events for anything that only ran on a single date.
- 3If you run from more than one site, set each session's schedule to the right location - Acuity's calendars usually map one-to-one onto Session locations.
It doesn't need to be perfect on the first pass. You can keep adjusting sessions right up to switch day - just make sure the shape is right before you run your final Acuity export, since that's the export that has to match.
2. Connect Stripe
Set this up early so it's not something you're doing under time pressure on switch day - see connect Stripe for the full walkthrough. Two things worth knowing specifically because you're moving off Acuity:
- Session creates a brand-new, dedicated Stripe account for your venue - it doesn't plug into the Stripe account your Acuity bookings already pay into. That existing account, and its full payment history, stays exactly as it is.
- Use the exact same email or Stripe login you already use. The new account then sits alongside your existing one under the same Stripe login, rather than creating a second login to keep track of. Enter the same business and bank details too, and your money lands in the same bank as before - see why you see a second Stripe account for the full explanation.
This is normal, not a mistake - Stripe won't let an account already connected to Acuity be reused by another platform, so it creates a fresh one automatically. It can look like a "sub-account" in your Stripe login; it's the right one to finish setting up.
3. Set your prices to match Acuity's appointment types
Add price options to each session that mirror what Acuity charges for the matching appointment type, so your sessions are ready to sell the moment you switch your links over. Imported bookings carry their own price and amount paid across from the Acuity export, so this step is really about being ready to take new bookings correctly from day one, not about the import itself.
If you sell bundles in Acuity, it's worth creating the matching bundle product in Session too - the import can then link each imported pack to it directly rather than arriving as an unrestricted credit. Gift vouchers and discount codes need nothing pre-created; they import as standalone codes. If you run a membership, create your tiers now so each imported member's reactivation link points at the right one.
4. Carry over your policies, waivers and emails
A few settings shape what customers experience from the moment you go live, so it's worth matching them to how you already run things in Acuity rather than leaving Session's defaults in place:
- Cancellation and reschedule policy - set how late customers can change their own booking on Settings → Booking policy. See cancellation and reschedule policy.
- Waivers - if customers sign one in Acuity, set up the equivalent in Session before you take your first booking. See digital waivers.
- Automated emails - confirmations and cancellations send automatically either way, but if you want reminders or review requests on, or want to match your own wording, do that on Email → Automated. See automated emails.
The full checklist for a new venue - including branding and team access - is in going live, if you want to work through it in one pass.
5. Agree a switch day with your team
There's no downtime required. Your Session page is already taking bookings by link before switch day, so stopping Acuity closes nothing your customers can reach - you don't need to close, and you don't need to pick a quiet day for that reason. Pick switch day based on when your team can give it a bit of focused attention instead: running the final Acuity export, checking it, and sending the announcement email all take a bit of concentration, so block out a morning rather than trying to slot it between other things.
On the day
1. Stop Acuity taking anything new
This comes first, and the order is the whole point: while both systems are open they're selling the same spaces, and Session can't see the Acuity side until your import lands. Stopping Acuity first closes that window, and everything already booked is untouched.
This doesn't take you offline. Your Session booking page already takes bookings for anyone with the link, from the moment you created a session - going live later is only about being findable in Google. So the only thing that closes here is Acuity.
- 1Stop new appointment bookings. The simplest, fully reversible way is Acuity's own Block off time → Block multiple days - set it to run from today for several years ahead, across every calendar. Nothing already booked is touched; it just stops new bookings appearing as available. (If you'd rather use a settings-based approach, each calendar's Edit availability/limits → Calendar scheduling limits has an "Appointments per time slot" value - setting it to 0 blocks that calendar the same way.)
- 2Stop new package, gift certificate and subscription sales. Acuity hides anything not switched to "Public" from your booking page, so open each product under Packages, Gifts & Subscriptions and turn that off. Existing orders and balances aren't affected.
Acuity itself stays completely intact and accessible afterwards - you're only stopping new activity, not deleting anything. It's still there for historical reference whenever you need it.
Acuity's screens and wording do shift over time, so treat the labels above as a strong starting point rather than gospel - if something doesn't quite match what you see, Acuity's own help centre or support team can confirm the current exact steps.
2. Point your links at Session
Update your website, social bios and any other links to your new Session booking page - bookasession.org/your-slug - and start taking bookings straight away. See your booking links for the different link shapes (a specific location, a specific session, a poster QR code) if you want more than the one main address.
3. Run your final Acuity export and import your data
This is the part worth taking your time over. Acuity keeps your data across several different screens, and two of them - gift certificates and packages - don't export as a CSV at all, so there's some manual gathering to do alongside the exports that do work cleanly.
Do this on the day, and only after step 1. Anything Acuity sells between your export and the moment you switch it off is missed - and importing again won't pick it up, because a second import skips gift voucher and bundle codes that already exist rather than refreshing their balances. An early import leaves stale balances that have to be corrected by hand. Run one "dry" export a day or two beforehand to check the file looks right, then the real, final one at cutover.
Appointments (bookings and customers). In Acuity, open Reports (or your appointments list) and choose Export. Set the date range wide enough to cover your history plus everything upcoming, and make sure Email, Type, Start time, Price, Amount paid, Appointment ID and your status column are included - the Appointment ID is what stops a re-import creating duplicates if you need to run it twice, and the status column is what lets us leave already-cancelled appointments out (their customers still come across). Import this as the Bookings type; it creates a customer account for every attendee automatically, so you usually don't need the Clients export as well. Full mapping steps: exporting from Acuity.
The import maps each booking onto an existing session at a matching time - it doesn't create new sessions for slots that aren't already on your calendar. That's usually fine if your upcoming bookings mirror the schedule you set up before you started. But if you've got real booking history to preserve, more than one location, or private-hire bookings mixed in, send us your export instead of running it yourself - we'll bring it across properly, the same way we handle members.
Gift certificates and packages - these need gathering by hand. Acuity doesn't export outstanding gift certificate balances or package remaining-sessions as a CSV at any plan level. Acuity's Packages, Gifts & Subscriptions → View Orders → Export All does give you a CSV of every order (buyer, product, amount, order date), which is a useful starting point for who bought what - but it doesn't include the current remaining balance, which is the number you actually need. Build a small spreadsheet by hand instead, working from Acuity's own Gift Certificates and Packages screens: one row per code, with the code, the customer's email, and the remaining value (gift certificates) or remaining sessions (packages). A screenshot of each screen works just as well if a spreadsheet is slower to put together. See gift certificates and packages for exactly how to turn that into an import.
A few things worth knowing while you're gathering these:
- Acuity's "Package" is Session's "Bundle", and Acuity's "Gift Certificate" is Session's "gift voucher" - map them accordingly on import.
- Match the value type to what the certificate actually represents. A certificate for a fixed number of sessions imports as a Session count voucher - it never goes out of date even if your prices change later. A certificate for a cash amount imports as an amount voucher instead. If a certificate covers a private hire, restrict it to that specific session on import - a plain count voucher can't fairly cover a whole private-hire booking, since private hire is priced as one block rather than per space.
- Don't trust the certificate's name for its value type. A product genuinely named "10 sessions" can, in practice, track its balance in pounds rather than session count - check what Acuity is actually showing you on the balance screen itself, not just the product name, before you decide how to import it.
- A gift certificate bought as a present is safe to import under the buyer's email, even with no separate recipient email on file. Session vouchers redeem by their code, not by whose account they sit under - the buyer just needs to pass the code along, and it'll work.
Discount codes - also gathered by hand, and recreated directly in Session. Acuity has no export for coupon codes either, so open each active one on Acuity's own edit screen and note its real configuration: percentage or flat-amount discount, whether it's capped by total uses or uses-per-customer, and its expiry.
A code's name can be misleading - a code called SUMMER10 turning out to be a flat £5 off rather than 10% is a genuinely common surprise. Always read the actual configured value off Acuity's edit screen; never assume it from the code itself.
Once you've got each code's real settings, recreate it directly under Offers → Discounts in Session rather than through the import wizard - see discount codes.

4. Press Go live
Your booking page has been taking bookings by link all along. Go live is the separate act that makes it findable in Google and other search engines - so do it once your data is across and your page is showing the right sessions.
- 1Open your Setup checklist and select Go live.
- 2Confirm your booking URL is settled, and that you've imported your existing bookings.
The full checklist, including what has to be done before the button becomes available, is in going live.
5. Email your customers with an upcoming booking or active membership
Anyone with a booking still to come, or an active membership, subscription, voucher or bundle, should hear from you directly - everything else, they'll just notice next time they look for you online. Here's a short draft to adapt:
Subject: We've moved our booking system
Hi
[first name],We've switched to a new booking system called Session. The good news: your upcoming booking, any credit or vouchers, and your membership have already moved across automatically, tied to this email address.
To pick up where you left off:
- Go to bookasession.org/your-slug/welcome
- Set up your login using this same email address
- You'll see your booking, credit and membership waiting for you
Any questions, just reply to this email.
Keep it short and make it your own - the point is reassurance, not a full explanation. /your-slug/welcome is a dedicated link that shows a "set up your account" prompt over your live calendar; it isn't a fresh sign-up, since their account already exists from the import - they're just claiming it. Anyone who doesn't click it loses nothing: their booking and credit are safe and usable either way, the link just gives them somewhere to manage things online.
Session works out who needs this email. Once you've gone live, your Setup checklist shows you the customers who hold a booking, membership or credit with you - the people who must not miss the move. It gives you a draft you can edit, and their email addresses to copy. It's there for about a fortnight after you go live - after that the news has gone stale and the addresses are colder, so it's worth doing in the first few days.
You send it from your own address. That's deliberate: your customers know your name, and an email from an address they've written to before is far more likely to reach their inbox than one from a system they've never heard of.
Paste the addresses into BCC, never To or Cc - in To or Cc, every customer can see every other customer's email address. Most providers cap how many people you can email at once (Gmail stops at a few hundred a day), so you may need to send it in batches.
To reach your wider mailing list, send from Acuity or your own mail tool. Session's email marketing only mails customers who have opted in, and an appointments import brings people across with no marketing consent recorded - so a broadcast here would reach almost nobody. If you keep a mailing list with consent in Acuity or Mailchimp, bring that across separately as a Customers import and mail it from Session afterwards.
If members are coming across too, members has the fuller picture of what they see and when they're charged - they come across with nothing live until they choose to reactivate, so nobody is billed twice during the switch.
Common questions
-
Will there be any downtime? No. Your Session booking page takes bookings for anyone with the link from the moment you create a session, so it's already open before switch day - stopping Acuity first closes nothing customers can reach. There's no need to close, and no need to time the switch around a quiet day.
-
Do I have to import everything on switch day? Yes - the import itself genuinely has to happen at cutover, after you've stopped Acuity taking new bookings. Everything else (sessions, prices, Stripe, policies) should be set up in advance, so switch day is just the final export, going live and the customer email. Importing early is the one thing to avoid: anything Acuity sells afterwards is missed, and re-importing won't pick it up.
-
What if I find a code Acuity didn't export? Add it as a manual voucher afterwards, the same way you'd add any voucher day-to-day - see discount codes and gift vouchers. Nothing about the switch prevents adding codes later.
-
What happens to my Acuity account? It stays exactly as it is - intact, and viewable for historical reference - you're only turning off new bookings and sales, not deleting the account or its data.
-
A customer says they can't see their booking after claiming their account. They need to use the exact email address that was on their Acuity booking. If they used a different one, get in touch with us and we'll merge the two accounts - see troubleshooting.
-
My gift certificates and packages weren't in my Acuity export - is that a bug? No - Acuity doesn't export those balances at any plan level, so they're never part of the appointments export. Gather them by hand from Acuity's own screens and import them separately as gift vouchers or bundles.
-
Will my full booking history and every location import automatically through the wizard? Only if your bookings map cleanly onto sessions you've already set up. The self-serve import is built for straightforward cases; a venue with real history to keep, multiple locations, or private-hire bookings gets a better result if you send us the export instead of running it yourself, the same way we handle members.