GrowthOS

Enquiries from Instagram, WhatsApp and your website land in one queue — with the follow-up already drafted in the language your patients actually speak.

A front-desk operating system for clinics and service businesses. It works on the half of the practice that practice-management software ignores: the enquiries that arrive while everyone is busy, and the follow-ups nobody has time to write.

ConvertClinic & service-business CRMLive, self-serve signup
  • Take the product tourSix steps, no signup
Who it's for
Indian dental clinics of one to five chairs, where the owner-dentist is also, in practice, the marketing department.
Who it isn't for
Not a hospital information system. It does not do inventory, insurance claims or lab workflows, and it does not pretend to.
What it replaces
A WhatsApp inbox, an Instagram DM folder, a website form nobody checks, and whichever staff member happened to remember.
app.themaskedmarketers.com/tour
The live product tour — no signup, six steps through a real workday.
The problem

What it’s like
without it.

Indian clinics lose money at the front desk, not in the chair. An enquiry arrives on Instagram at 9pm, another on WhatsApp during a procedure, a third through a website nobody checks. Whether any of them becomes an appointment depends on who remembered.

The practice-management software that exists treats marketing as somebody else's problem, and the marketing tools treat the patient record as somebody else's problem. The gap between the two is exactly where the revenue goes.

And the follow-up itself has to sound right. A perfectly composed English paragraph is not how a receptionist in Indore talks to a patient, so if the drafting can't do Hinglish, it doesn't get sent — and an unsent draft is worth nothing.

What changes

What’s different the day you start using it.

01

Nothing arrives where nobody is looking

One queue for every channel, with a running count of the revenue recovered from it. The number on screen is money won back rather than enquiries logged, because that is the number that decides whether the software survives its third month.

02

The follow-up is already written — in Hinglish

The draft sounds like your receptionist, not a press release. Staff read it, adjust a word, and tap once to send. The software never sends on its own: a human is always the last step before a patient hears from your clinic.

03

A consultation becomes a record without anyone typing

Dictate after the patient leaves and the transcript becomes a structured treatment proposal, staged for review. Follow-ups and recalls become real records only when someone confirms them — so the fastest path and the safe path are the same path.

04

Two clinics can never see each other

Every row carries its clinic, and the database enforces that independently of the application code. It is the least glamorous guarantee in the product and the one any clinic should ask about first, because the alternative is a single forgotten filter away from being a very bad day.

What’s included

Everything in the box.

Every line below is built and running. Nothing here is a roadmap item wearing a tick.

The front desk

  • One enquiry inbox across channels, with a running count of the revenue recovered from it
  • Patients, appointments, recalls and billing in the same system as the leads
  • A treatment pipeline that handles several treatments in one case rather than one row each
  • Built for Android Chrome first — 44px tap targets, tables that collapse into cards, a hamburger rail

Follow-up

  • AI-drafted WhatsApp messages, in Hinglish where that is how the patient talks
  • Sent as a deep link the human taps — the software never messages a patient on its own
  • Every send stamps a timestamp, and the button becomes a “✓ Sent” label so nobody double-messages a patient

Voice notes

  • Dictate after a consultation; the transcript becomes a structured proposal through a Claude tool-use loop
  • The proposal is staged for review — follow-ups and recalls become real records only when a human confirms
  • Every action the agent takes is written to an audit table

Marketing & billing

  • A content studio with Claude, ChatGPT and Gemini behind one key, priced per model in credits
  • AI photo backdrops for social posts, with hard no-people and no-text safety rails
  • Plans, credits, top-up packs and trials on live Cashfree payments
  • A cross-tenant owner panel that clinic users cannot reach
How you get it

Free trial is live. Paid plans are priced on a call.

Sign-up is open and the trial runs today — you can be inside the product in a few minutes without talking to me. Paid pricing is agreed on a call rather than published in a table, because the first clinics are being onboarded by hand and I would rather fit the plan to the practice than defend a price list.

  • Self-serve sign-up and a free trial, live now
  • Live payments through Cashfree, verified end to end
  • Your clinic's data isolated in the database itself, not merely in the queries
  • Built phone-first, because the front desk runs on an Android phone
How it’s built

The stack,
without mystique.

Standard, boring technology your next developer will recognise. That’s the point — nothing here is a proprietary runtime you’d be locked into.

Framework
Next.js 14 App Router, TypeScript
Data
Supabase — Postgres, Auth, row-level security, Edge Functions
Migrations
53 applied
Tenancy
clinic_id on every table, enforced by row-level security rather than by queries
AI
Claude for the notes agent; Claude / ChatGPT / Gemini via OpenRouter in the studio
Payments
Cashfree, live
Hosting
Vercel
Why it holds up

What you’re trusting when you use it.

Anyone can list features. These are the calls that decide whether the thing survives contact with real customers and real money — explained without jargon, because you should be able to judge them without being an engineer.

  1. 01

    A leak between two clinics is the worst possible bug, so it is prevented twice

    Every table carries the clinic id, every query filters on it, and row-level security in Postgres enforces the same rule independently. Application code alone is not treated as sufficient — if a page ever forgot its filter, the database still returns nothing. That redundancy is the entire tenancy model.

  2. 02

    The AI physically cannot message a patient

    The notes agent has no tool that sends anything. It can only build a proposal. Follow-ups, recalls and review requests become real records when a human presses Confirm, and patient messaging stays a link a person taps. This is a capability boundary rather than a prompt instruction — which is the only kind that holds.

  3. 03

    Clinical content is never extracted or interpreted

    Diagnoses, prescriptions and dosages stay verbatim inside the note. The agent never lifts them into structured fields and never adds an interpretation. Unknown fields are left empty rather than guessed. Software that quietly reorganises a doctor's clinical wording is a liability, not a feature.

  4. 04

    A dictated transcript is untrusted input

    Transcripts arrive fenced and are treated as data, never as instructions. Text inside one that tells the agent to ignore its rules is noted and not obeyed — the same discipline you would apply to anything a stranger can type into your system.

  5. 05

    The admin panel returns 404, never 403

    A non-admin who guesses an admin URL is told the page does not exist, so the panel's existence is never advertised. It is gated in middleware and re-verified independently inside every admin page and action, because a server action is its own endpoint and a route guard does not cover it. Every admin mutation writes an audit row.

  6. 06

    A new vertical is seed data, never a code fork

    Dermatology or physiotherapy would be rows in a catalogue table resolved through one shared fallback — never an “if vertical equals” branch in feature code. The mechanism is built and live; the flag stays off in production until a paying non-dental clinic exists.

3
channels in one queue
1
tap to send a follow-up
53
database migrations applied
44px
minimum tap target, phone-first
Where this actually is

Sign-up, the trial and live Cashfree payments are all verified end to end — by a real ₹599 charge I made to myself. There is no paying clinic on GrowthOS yet.

Want one of these for your business?

GrowthOStook the shape it did because of one specific business problem. Tell me yours and I’ll tell you what it would take — and if GrowthOS is already most of the answer, running on it beats rebuilding it.

Thirty minutes, screen-shared: the front desk — the enquiry queue, an AI-drafted Hinglish follow-up going out in one tap, treatment plans and the revenue-recovered counter.