34 empty apartments. Eleven months later: zero.
How a family-owned independent living community in Louisville went from its first real vacancy problem to full occupancy with a waitlist, and how we tracked every dollar along the way.
The problem
Brownsboro Park is a family-owned independent retirement community on 14 acres in Louisville. For most of its history it never had to think about vacancies. Word of mouth, a strong local name, and a loyal resident base kept it full.
After COVID, that changed. By late summer 2025 the community had 34 empty apartments. With all-inclusive rent averaging about $3,000 a month, that was $102,000 a month, or $1,224,000 a year, in revenue the community was not collecting.
The brief
Fill the building, and prove which marketing did it. Brownsboro Park did not want impressions and clicks reported back as success. They wanted signed leases they could trace to a source.
Black Label took over the full digital program in August 2025 for a flat $6,000 a month, covering ad spend, management, SEO, and the website.
Watch the building fill
Each shape is one apartment. Drag through the months to see occupancy change.
Monthly rent restored: $0
What we built
We treated the move-in decision as the long funnel it is. Choosing a retirement community is often a months-long process involving the prospective resident and their adult children, so each channel was given one job.
Budget stayed flexible. Any month a channel underspent or underperformed, the money moved to whatever was converting, usually Google Search.
Google Search: the conversion engine
Branded and non-branded campaigns for high-intent searches like independent senior living and retirement communities in Louisville. Built for phone calls, because that is how this audience converts: 91 of the first 108 conversions were calls.
Meta: awareness and retargeting
Broad local reach across Louisville and Southern Indiana, plus retargeting of people who had already visited from search. Reached adult children (35–64) as well as prospective residents (65+).
Website and SEO
Rebuilt floor plan pages with pricing, technical cleanup, accessibility and privacy work, new content targeting real questions families ask, and local citations.
AI search (LLM SEO)
Structured data, an llms.txt file, and content written to be quoted by AI assistants, so Brownsboro Park shows up when families ask ChatGPT or Google's AI where to look.
The return
Every apartment filled is rent the community collects every month after. Counting only the months after each apartment was filled, compared against the August 2025 starting point, and subtracting October's one extra vacancy:
Vacant apartments by month. Vacancies ticked up once in October 2025 before falling every month after.
How we prove it
ROI claims are cheap. We built the tracking so Brownsboro Park could check ours.
Every lead is logged with its source. Calls from Google Ads are matched by phone number, date, and call length against the community's own leasing log of calls, tours, and signings. When a caller's number from an ad lines up with a signed lease, that signing is credited to the campaign that produced it.
In October 2025 we moved all call tracking to CallRail, with a unique number per channel and dynamic numbers on the website. That closed the gap where Google's call forwarding hid caller IDs, and it made every match auditable.
Early proof: the first three months
| Measure | Result |
|---|---|
| Signed leases matched to Google Ads | 8 |
| Annual rent from those 8 residents | $288,000 |
| High-intent leads, first full month | 32 (23 calls, 9 forms) |
| Brand search cost per conversion | $21.80 |
| Non-brand cost per conversion | $60.83 |
| Non-brand conversion rate | 10.7% |
Those 8 matched signings alone were worth 4× the $72,000 annual fee.
What changed along the way
- Aug 2025
Audit, Google Ads rebuild, Meta launch, technical SEO fixes, floor plan pages rewritten with pricing.
- Sep 2025
First signings matched to ads. llms.txt published; AI search health 89% → 95%. Accessibility and privacy work.
- Oct 2025
CallRail goes live. Schema markup, internal linking, metadata rewrite.
- Dec 2025–Jan 2026
Promo campaigns for move-in specials. Programmatic budget shifted into Google Search as it proved stronger.
- Mar 2026
192 ranking keywords, the most since 2022. Organic users up 28% month over month. Site health 98%.
- Jul 2026
Zero vacancies. Focus moves to waitlist conversion and conversion-rate work on the site.
Decisions the data made for us
Call-only ads were outperformed by standard search ads, so we paused them. Two ad groups that competed with stronger keywords or drew little traffic were cut. Programmatic display built awareness but could not be tied to signings the way search could, so its budget moved to Google.
Call recordings showed people phoning Brownsboro Park while looking for competitors, a signal that shaped keyword and messaging decisions.
Site performance today: Lighthouse 99 performance, 98 accessibility, 100 best practices, 100 SEO.
A team result
Occupancy is a team result. Brownsboro Park's leasing staff give the tours and close the leases, and their team's work on-site matters as much as anything we do in the ad accounts. We match the move-ins we can trace back to our channels, and we give the client the data to check them.