How We Transferred a 3,000-User SaaS Business Without Losing a Customer
Customer-preserving SaaS transfer — process and tactics.
Setting the Stage: The Asset and the Deal
The business was a vertical SaaS tool serving indie agencies, generating $41k MRR ($492k ARR) at 18 % gross margin after ads. We agreed on a 3.4× ARR multiple ($1.67 M) with a 10 % escrow held for 90 days. The buyer was an operator already running two similar tools on Acquire.com; the LOI was signed 19 days after first outreach.
Pre-Close Prep That Protected Every Login
Sixty days before closing we froze all pricing changes and paused new feature releases so the product snapshot stayed identical. We exported every customer record—name, email, last four of card, subscription tier, and lifetime usage—into a single CSV that the buyer could import into Stripe via their existing account. A parallel export mapped every active login token so we could rotate secrets post-close without forcing password resets.
Day-of-Transfer Playbook
- 09:00 UTC – Signed APA and released source code via GitHub transfer + encrypted S3 bucket.
- 10:30 UTC – Switched DNS A records and updated Stripe webhook endpoints; both changes propagated in under four minutes.
- 11:00 UTC – Sent a single in-app notice and identical email from the founder’s personal address: “We’ve sold the company to [Buyer]. Nothing changes for you today—same login, same price, same support.”
- 14:00 UTC – Buyer’s team assumed Intercom inbox; we kept a 48-hour shadow presence answering only edge-case tickets.
Communication That Prevented Even One Cancellation
We pre-wrote three email variants segmented by usage cohort (power users, light users, trial). Each variant opened with the concrete fact that pricing and data retention policies remained unchanged for 18 months per the APA. We also published a short Loom video (under 90 seconds) showing the unchanged login flow; the video link sat in the footer of every message. Support volume spiked 3× on day one but dropped below baseline by day four.
Post-Transfer Metrics That Proved Success
Thirty days later MRR stood at $40.8k (one voluntary downgrade), churn measured 1.1 % versus the prior 12-month average of 1.8 %. NPS remained flat at 67. The escrow was released in full after no claims surfaced around data continuity or billing interruptions.
How long did the actual DNS and Stripe cut-over take?
Under six minutes once the APA was countersigned; Stripe webhooks were the only item that needed manual re-pointing.
Did any users ask for refunds or data deletions?
Zero refunds and only two GDPR deletion requests, both handled by the buyer’s existing privacy workflow inside the first week.
What would you repeat versus change next time?
We would repeat the same-day Loom video and segmented email; we would change nothing about the 60-day feature freeze that kept the product identical on transfer day.
Ready to acquire?
Browse curated digital platforms on hades.ae — every listing is built and owned by our team. View available platforms →