Guide Posted by the DataCops team

Mental health and therapy Facebook ads: how to measure results without sending sensitive data

If you advertise therapy or mental health services, you're in one of the most sensitive categories there is. And you still need to know if your ads work. That tension is the whole topic, so let me take it seriously.

The tension is real. To optimise ads, the platform needs conversions. But a conversion for a therapy practice, "book a session", can carry information about a person's mental health if the wrong details travel with it. A page called /anxiety-therapy/book says what someone is seeking help for. That's not a detail you want an ad platform holding.

So the goal is a principle, not a trick: measure results while sending as little as possible.

Let me turn that into a checklist of what I'd want a practice to look at.

The page link. A URL like /depression-counselling/book says what the visitor is seeking help for. Cut it to the domain, so no condition travels.

The event name. "Book_Anxiety_Session" is a health statement. A neutral code says nothing.

The form. If it asks about symptoms or what someone is struggling with, that shouldn't be part of what goes to an ad platform. Those answers belong in the practice's own system.

The thank-you page. Its address and title often describe the service.

What does the ad platform actually need? Two things: a hashed identity, so it can match the conversion to the person who clicked, and the ad click itself. That's enough for it to count the result. It doesn't need to know why the person came.

Then there's the honest question of which stage to measure. A booked session, a completed first session, and an ongoing client are three different signals, and they answer different questions. The booking tells you the ad worked at getting someone to act. The completed first session tells you the person really came. An ongoing client tells you the match was good. The later ones are better for the ads, and worth sending if you can do it without attaching anything sensitive.

A made-up example. 120 enquiries. 70 book. 50 attend the first session. 30 continue for a month. The ad platform that only sees enquiries can't tell the difference between 120 people and 30. One that sees "attended" and "continued", with nothing else attached, learns to find people who follow through.

A small process point: agree a status in your practice system that means "attended first session", and make it a habit to set it the same day. It's a five-second action, and it's the trigger for the most useful signal you can send.

If you ever have to explain this to a client, a board or a partner, here's a three-sentence version that I've found works. "We measure whether our ads lead to people booking and attending, using a hashed email or phone and the ad click. We don't send anything about why someone came, and we can show, for any conversion, exactly what was sent. Your records stay in your own system." It's short, it's honest, and it covers the two things people worry about: what leaves and whether you can prove it.

And a reminder that this is about data hygiene, not secrecy. The goal isn't to hide anything from the people you serve. It's to make sure the only data that reaches an advertising platform is the minimum needed to count a result.

How do you measure ad results today without exposing what people seek help for?

More on this: Meta health and wellness restrictions, and the complete guide to offline conversion tracking.

1 comment

Comments (1)

DataCops team author · 30 Sep 2026

If a client ever asks what data you share with ad platforms, "a hashed email and the ad click, and nothing about why they came" is a good sentence to be able to say.

1
Replies from DataCops account holders are coming soon. Until then, questions about your own setup can go to the team.

More threads

See what your own setup is missing

Send CRM sales back to the ad click that started them, logged per send.

Setup in 5 minutes. No credit card.

Live traffic quality

Updated just now

Visits · last 24h

487
Real users
35873.5%
Bots · auto-filtered
12926.5%

Without filtering, 26.5% of your reported traffic is bot noise inflating dashboards and draining ad spend.

Don't trust your analytics!

Make confident, data-driven decisions withactionable ad spend insights.

Setup in 2 minutes
No credit card