Multi-tenant admin: managing 50+ sub-accounts without chaos
At 10 clients, everything fits in your head. At 25, you start forgetting which customer's escalation rules are which. At 50+, lack of multi-tenant admin discipline becomes a customer-experience problem — wrong info quoted to the wrong customer, missed renewals, configuration drift. This post is the practical system for managing 50+ sub-accounts without chaos.
The three categories of information per customer
Every customer has data living in three places:
- The platform (RingReady): the receptionist configuration — prompt, voice, KB, escalation rules, phone number, notification settings.
- Your CRM (or spreadsheet): the relationship data — contact info, signup date, tier, MRR, contract terms, key contact person, renewal date.
- Your knowledge store (Notion/Airtable): the operational context — their specific business workflows, integrations, history of issues, custom escalation rules, who-talks-to-whom.
The chaos at 50+ clients comes from these three drifting apart — the platform has one version of the truth, your CRM has another, your operational notes have a third, and nobody knows which is current.
The single-source convention
For each category of data, designate exactly one source of truth:
| Data type | Source of truth | Reference copies |
|---|---|---|
| Receptionist configuration | RingReady platform | None — update in platform, full stop |
| Contact + billing | Stripe + CRM | None — Stripe for billing, CRM for relationship |
| Operational notes | Notion/Airtable customer page | None — one page per customer, dated entries |
| Renewals + plan tier | CRM (with Stripe sync) | None — quarterly audit against Stripe |
The discipline: when you update info, update it in its source of truth. Don't keep a "shadow" copy in your inbox or in a Slack message. The temptation is real and it's the root cause of chaos.
The customer profile template
One page per customer in Notion/Airtable. Same structure every time:
- Identity: business name, owner name, primary contact, secondary contact, tier, MRR, signup date, renewal date.
- Receptionist config snapshot: phone number, voice, top 5 KB items (linked to the platform record). Updated once per quarter as a sanity check.
- Operational history: dated entries of significant events — onboarding, escalations resolved, KB updates, executive reviews. Bullet-list format.
- Notes on the relationship: what this customer specifically cares about (X is a stickler about accuracy on hours; Y wants weekly check-ins; Z is a referral source).
- Open issues: anything currently in flight. Cleared monthly.
This page is the file the CSM (or you) opens before any customer interaction. Five seconds of review prevents 30 minutes of "wait, what did we agree to?" backtracking.
The monthly admin cadence
First business day of every month, 90 minutes:
- Stripe ↔ CRM reconcile: walk through new charges, failed charges, cancellations. Update CRM tier + status to match Stripe reality.
- Platform ↔ customer profile reconcile: spot-check 5 customers per month. Does their RingReady config match what their profile says? If not, which is right? Update the wrong one.
- Renewal flagging: identify all customers with renewals in the next 60 days. Add to your follow-up queue.
- Inactive flag: any customer whose receptionist hasn't handled a call in 14+ days. They may have inadvertently disabled forwarding. Reach out.
- Update KPI dashboard: the 5 KPIs from the monthly KPIs post.
90 minutes once a month prevents 10 hours of recovery work every quarter.
Naming conventions
They matter more than you think. Pick one and stick to it:
- Customer ID format:
[YYYY-MM]-[Initials]-[business-shorthand]e.g.2026-04-DM-pinevalleydental. Sortable, scannable, unique. - Receptionist names in platform:
[Brand Name] - [City]e.g. Pine Valley Dental - Phoenix. Makes sub-account lists scannable. - File naming for KBs:
kb-[customer-id]-v[number].md. - Email subject prefixes:
[Customer Name]at the start of every customer-related email. Makes Gmail search work.
The exact convention matters less than picking one and enforcing it. Two months in, you'll thank yourself.
When to add a CSM (revisit)
If you're spending more than 4 hours/week on the admin tasks above (reconciling, profile maintenance, renewal flagging), it's time to hand them to a CSM. See the CSM hiring post. The admin work is exactly the kind of task CSMs are good at and you shouldn't be doing.
Tooling at this scale
What you actually need at 50–100 customers:
- Stripe (you have this).
- A CRM — HubSpot Free works to ~250 customers, Pipedrive at $14–$49/mo is the upgrade, Close at $99/mo if you have outbound sales scale.
- Notion or Airtable for the customer profile pages. Either works; Notion is more flexible, Airtable is more structured.
- A shared inbox tool if multiple people handle support — Front, Help Scout, or Missive. Skip until you have a CSM.
What you do NOT need: Salesforce, Gainsight, Totango, or any enterprise CSM platform. Those are for businesses with 500+ customers. The above stack scales fine to 500.
The big mistake to avoid
Trying to build all this admin discipline retroactively at 60 customers when you started building haphazardly at 15. It's twice as painful and three times as long. Build the system at 20–25 customers when you have the time and the customer base is small enough to clean up. By 50, you're cruising; without the system, you're swimming.