Tell a skin check from a cosmetic consult, and see what each became.
Built for a dermatology practice with a medical side and a cosmetic side, one office or several, whoever runs the marketing. TruLata reads your Google accounts, each office's Business Profile, your Facebook and Instagram where they are connected, and the requests from your own site's forms, runs the watching and the drafting on a schedule whether anyone is at the front desk, and shows you what each request became.

Is this built for a dermatology practice?
Yes. It is built for a dermatology practice with physicians, physician assistants and aestheticians under one name, one office or several, and a group with several offices fits the same way, office by office. The marketing may sit with the practice administrator between staffing and billing, with the cosmetic coordinator who also answers the direct messages, or with a marketing manager, and each of them gets the same screen. The search, the ads, the content and the counting run on a schedule whether anyone had time this week, every request is counted from your own site, and one screen shows what happened and what it cost.
A dermatology practice takes two kinds of request, and patients choose them differently. The medical request is a new-patient appointment: a full-body skin check, a spot someone wants looked at, an acne appointment. The patient checks whether you take their insurance, whether you are accepting new patients and how far out the next opening is, reads the rating, and asks for a time. The cosmetic request is a consultation: a neurotoxin appointment, filler, a laser treatment, a chemical peel. It is private pay, the patient reads the treatment page, who the provider is and the reviews, and may have found the practice on Instagram before they ever reached the site.
The two sides fill different calendars and are paid for differently, so the screen counts them apart. A request from your own site's form is yours alone, written to your lead sheet the moment it lands with the visit type on the row, and the Leads view filters by visit type, so the front desk reads the new-patient requests and the cosmetic coordinator reads the consultations. Each one gets the same question when you are done with it: what did it become.
Two kinds of request, chosen differently
The new-patient appointment
- A full-body skin check, a spot someone wants looked at, an acne appointment
- Checks insurance, whether you are accepting new patients and the next opening
The cosmetic consultation
- A neurotoxin appointment, filler, a laser treatment, a chemical peel
- Private pay: reads the treatment page, who the provider is and the reviews

The two sides fill different calendars and are paid for differently.
What does the screen read for a dermatology practice?
It leads with the requests. When someone submits a form on your site, the form handler appends the row to a lead sheet server-side and emails your team, and the Leads view reads that sheet newest first, with the visit type and the office on each row. Where your form asks for insurance or private pay and preferred times, the answers are written to the sheet with the rest of the submission. Mark each request from the screen, contacted, quoted, won or lost, or not a lead with the reason, and the mark stays on the row. Won on a new-patient request is the patient seen at a first appointment; won on a cosmetic consultation is the treatment booked after it.
Google Business Profile gives rating, reviews and listing performance through a manager invitation you can revoke, one listing at a time, so each office's rating stays its own. Search Console gives the queries you appeared for, impressions, clicks and average position, two to three days behind; for a dermatology practice those queries are the visit and the place, a dermatologist near me, a skin check in a named town, a named cosmetic treatment, and the positions are Search Console's own averages, not a rank tracker. GA4 adds sessions, sources, pages and key events, hours behind intraday. Google Ads shows spend, conversions and cost per conversion by campaign, so a new-patient campaign and a laser campaign each carry their own cost per conversion. Where your Facebook Page and Instagram business account are connected, the Social view shows followers, engagement and top posts, read only, on Meta's schedule.
Where you bill cosmetic memberships through Stripe, the Revenue view reads payments and subscriptions live; it is read only and never creates a charge or a refund. Where your practice runs on a CRM or booking platform, the Jobs view reads its pipeline live, with a coming-soon card rather than a number until the data is trustworthy. Every source here is a marketing, lead or revenue record. Patient charts, photos and billing stay in your EHR or practice-management system today; a source with an API can be connected during setup. Card data is never read. Your inbox and calendar stay outside the screen today and connect during setup where your engagement calls for them. A phone call or a direct message counts as a lead where your CRM records it, and a call-tracking platform with an API is connected during setup where you run one.

What runs while the providers are with patients, and what waits for a person?
On Growth and Command, Facebook and Instagram campaigns for the cosmetic side run alongside search and are published to Meta through its API, and where we build the ad creative for you, the Creative view appears on your dashboard. Each ad draft shows its image, its copy and its audience before it runs; approve it or ask for changes, and every decision is recorded and reaches our team. Approval sits on the Creative view where you want it, so the physician who stands behind the wording of an ad reads each one first.
Every mapped Google Ads account is watched every morning. At 7:05 Eastern the ads change watch reads each account's change history and its user list, sets our own writes and routine noise aside, and raises a material change made by anyone else the same morning, including a recommendation Google applied on its own. A setting switched on under any login, or a new address given access, reaches the team the next morning rather than at the end of the month. Where we manage your search campaigns on all tiers, a budget or bid change is made within the limits set for your engagement and lands in the account's own change history, so moving spend between the new-patient and the cosmetic campaigns is a decision with a record behind it.
On Launch, Growth and Command, the content engine researches and drafts, on your cadence, the articles a patient reads before booking: what happens at a full-body skin check, how to read a sunscreen label, what to ask at a laser consultation, how a first neurotoxin appointment is scheduled. Each topic passes a demand gate on real search volume and what already occupies the result page, the research cites current sources, the dedupe reads the titles already published on your site, and each piece is filed as a Google Doc in your Drive with a featured image. Auto-publish is a per-client setting and approval is optional, which matters when a physician reads every medical sentence before it goes out. On Command, prospects are sourced weekly to the target profile set with you, which for a dermatology practice can be the primary care and pediatric offices that refer, and for the cosmetic side the salons, bridal boutiques and fitness studios near each office.
Every day at 7:20 Eastern, where your forms feed the sheet, the lead watch runs five checks across the sheet, GA4 and Ads, so a dead tag, a blind ad account or a stalled form is flagged the next day rather than at the end of the quarter. Every night at 12:01 Central a fallback snapshot is baked, and a failed pull leaves the previous page up. What stays with a person is the judgement: the limits on spend, and anything that answers a patient. A content piece with auto-publish off waits as a draft until someone approves it. Prospect emails leave from a review-first queue; a person releases them, or the queue releases on the schedule set for the engagement, and every send is logged with the draft, the mailbox and the time. Appointment reminders and recall messages stay with your practice software today. From the screen you can set a lead outcome, request a website change, and request a content, keyword, category or targeting change; each lands with the team as a logged ticket, and the engine's writes to your ad accounts and your site go through their APIs and land in each account's own change history.
While the providers are with patients
- Cosmetic ad draftsImage, copy and audience on the Creative view, where we build your ad creative
- Ads change watchEvery mapped account's change history and user list, material changes raised the same morning
- Lead watchFive checks across your form sheet, GA4 and Ads
- Content draftsSkin check and consultation questions, filed in your Drive, on Launch, Growth and Command
- Fallback snapshotBaked nightly, so a failed pull leaves the previous page up
What stays with a person is the judgement: the limits on spend, and anything that answers a patient.
Can I see it before anyone contacts the practice?
Yes. Open the demo at demo.trulata.com. It opens with your name and email, and the follow-up is an email, not a call. It runs on a fictional company called Meridian, every number in it is illustrative, and it is the same engine code every client dashboard runs. Open the Leads view, the Google Ads view and the search view, and you are looking at the screen a dermatology practice gets, with your sources in place of Meridian's.
Then read it against your own practice. You see medical patients who come through insurance and cosmetic patients who pay privately, from the towns around your offices, and someone carries the marketing between everything else. That is the practice the product is built for, one office or several; the multi-location page shows how each office stays readable on its own. Part of it runs on your own numbers during setup: the first pull, the answer-engine baseline and the ads watch run on your accounts in the first two weeks, before most of the engines are switched on.
Read the search view and the Social view the way they are built. Ranking is not earning, and a position on the search view is Search Console's average for that query rather than a rank tracker's guess. Engagement is not a booking either. That is why the screen puts the requests your own forms took beside the queries and the posts, and why proving which dollar made the phone ring starts from your own records.

Which tier fits a dermatology practice?
Starter includes the TruLata dashboard, full analytics, leads, search visibility, the AI visibility program, managed Google Ads search, the assistant and briefings and support tickets. Meta ads, for the cosmetic side, run on Growth and Command. The content engine runs on Launch, Growth and Command. The outbound engine runs on Command. Command adds the outbound engine, ad creatives and your full marketing team, always on, is scoped per engagement and carries no number on this site.
Seats are three on Starter, three on Launch, ten on Growth and unlimited on Command, so the administrator and the cosmetic coordinator each sign in with their own seat. Starter is $400 a month, Launch $650, Growth $1,200, and Command is scoped per engagement. Every tier is month to month with nothing metered, and an annual commitment takes twenty to twenty-five percent off the monthly. The pricing page carries the same figures.
Which engine runs on which tier
- Meta ads, for the cosmetic sideGrowth and Command
- Content engineLaunch, Growth and Command
- Outbound engineCommand
- Seatsthree on Starter, three on Launch, ten on Growth and unlimited on Command
Can your team run it for my practice?
Yes. Command adds the outbound engine, ad creatives and your full marketing team, always on, scoped per engagement, so the ad creative and the judged work sit with our team and still land in the record. The managed strategy retainer sits on top of any tier, scoped with you, and carries no number on this site. Every change we make lands in each account's own change history, which the same 7:05 Eastern watch reads and sorts as ours. The managed page covers both.
TruLata is also a marketing services firm, and the software sits beside that work. If you want the work done as a service rather than run as a system, local services marketing is the hub, with search and paid search underneath it. The other practices and trades the product is built for are on the industries page.

What a dermatology practice's screen reads, and how fresh it is.
| What | Where it comes from | How fresh |
|---|---|---|
| New-patient and cosmetic requests | Your site's forms, appended to a lead sheet server-side and emailed to your team; the Leads view reads it newest first, visit type on each row | Live |
| Rating, reviews, listing performance | Google Business Profile, one listing per office, with our Google account as a manager you can revoke | Refreshed with each pull; the header stamp says when |
| Spend, conversions, cost per conversion | Google Ads, by campaign, across every mapped account | Intraday lags hours; change history read daily at 7:05am ET |
| Followers, engagement, top posts | Facebook and Instagram, where connected, read only | On Meta's schedule |
| Ad drafts for approval | The Creative view, where we run paid social | As each set is built |
| Payments and memberships | Stripe, read only | Live |
| Queries, impressions, clicks, average position | Search Console; its own average positions, not a rank tracker | 2 to 3 days behind |
A phone call or a direct message counts as a lead where your CRM records it, and a call-tracking platform with an API is connected during setup where you run one. Patient charts, photos and billing stay in your EHR or practice-management system today, card data is never read, and your inbox and calendar stay outside the screen today and connect during setup where your engagement calls for them. The Social view reads Meta's numbers on Meta's schedule. Positions are Search Console's own averages. Every request on the screen traces to your forms or your CRM.
Questions, answered.
Can I tell medical requests from cosmetic consultations?
Yes. Each row in the Leads view carries the visit type the form recorded, and the view filters by it, so a skin check request and a filler consultation sit in different lists when you want them to. Google Ads shows spend and cost per conversion by campaign, so the new-patient campaigns and the cosmetic campaigns are judged apart, and the outcome you set on each row stays on it.
Can I approve every cosmetic ad before it runs?
Approval sits on the Creative view where you want it. Each draft shows its image in every placement it was built for, its copy and its audience; approve it, request changes or leave a note, and every decision is recorded with the time and reaches our team.
Does it read patient charts or photos?
The sources are the ones on this page: your Google accounts, each office's Business Profile, your Facebook and Instagram accounts where connected, Stripe, your website forms, and your CRM or booking platform where you run on one. Patient charts, photos and billing stay in your EHR or practice-management system today; a source with an API can be connected during setup. Card data is never read.
Do you count calls and direct messages?
A phone call or a direct message counts as a lead where your CRM or booking platform records it, and a call-tracking platform with an API is connected during setup where you run one. The requests the screen counts on its own are submissions from your website's forms, written to a sheet server-side as they land.
Can each office be read on its own?
Yes. Each Business Profile listing gets its own row in the connection map and is read one listing at a time, so one office's rating stays its own. Where each office runs its own campaigns, its spend and cost per conversion sit on their own campaign row, and the office on each lead row says where the request is headed. <a href="/product/use-cases/multi-location-multi-truck">The multi-location page</a> covers the setup.
What does it cost for a dermatology practice?
Starter is $400 a month, Launch $650, Growth $1,200, and Command is scoped per engagement. Seats are three on Starter, three on Launch, ten on Growth and unlimited on Command. Every tier is month to month with nothing metered, and a managed strategy retainer sits on top of any tier, scoped with you rather than priced on this site; <a href="/product/managed">the managed page</a> says what our team takes on.
See it running
before you decide.
The demo is the real product on a fictional company, with your name and email in front of it. Pricing is three published tiers.
Open the live demo See pricing
New here? See what TruLata is. Prefer to write? Send us the one thing you want to know.
Start here: AI marketing platform · AI marketing software · all-in-one marketing platform · marketing automation software · marketing software for small business.
- Refreshed when you open itLive data on page load, never a monthly PDF
- Counted from your own formsLeads recorded server-side, compared daily with Ads and GA4
- Seen in AI answersHow often ChatGPT, Gemini, Claude and Grok name you, measured
- Every send loggedProspect emails leave from a review-first queue, and every send is logged.

