The situation
Revive had a WordPress site that worked, and a practice that had outgrown it. Two problems sat on top of each other.
The first is the category. People arrive with a concern, not a treatment name. Someone knows their skin is breaking out or their jawline has softened. They do not know whether that is Aerolase, an injectable, or a regenerative therapy. A services menu written in clinical language asks the visitor to do the translating, and half of them close the tab instead.
The second is Salinas. A real share of the people searching are more comfortable reading in Spanish, and a translate widget is not the same thing as a Spanish website.
What we built
The whole site again, moved off WordPress onto Next.js and deployed on Vercel. It went live in September 2026.
- 226 pages, 113 in English and 113 in Spanish, at full parity. Every page is written in both languages and indexed separately, with hreflang so Google serves the Spanish page to a Spanish searcher instead of the English one
- Spanish URLs in Spanish. The filler page is /es/rellenos-dermicos, not /es/dermal-fillers. The Spanish half reads like it was written first, because it was written and not converted
- The full catalog given real pages: injectables, lasers, IV therapy, microneedling, weight management, facials and skin care, each with its own preparation and aftercare pages
- A before and after gallery with real patient results
- Two quizzes that do the sorting. An IV drip matcher and a skin concern finder, both ending on a treatment rather than a list
- Pricing menus, memberships and financing out in the open, since all three are reasons people say yes and all three used to be a phone call
- Every booking button opens the exact service in the Boulevard cart. A visitor who just read the lip filler page gets lip filler, not the menu
- A private dashboard where Angelica reads every conversation the concierge had, what was asked, and how fast it answered
The concierge
The piece that changed the site most is a bilingual assistant on every page. What makes it useful is not that it exists. It is the rules it runs under.
- It knows the practice. It searches the site’s own pages, every service page, blog post and FAQ, and combines meaning-based search with plain keyword matching, so it finds the answer whether someone types “skin tightening” or “RF microneedling”
- It answers in the language it was asked in, English or Spanish, with no toggle
- It books the specific treatment. It knows every bookable service and links straight to the one it just recommended, so the recommendation and the cart are the same action
- It quotes prices from a fixed price list and nothing else. It does not estimate
- It remembers a returning visitor and picks up where the last conversation stopped
- It does not push. The booking prompt is earned after a real exchange, not dropped into the first reply
- It is medically careful by design. It does not diagnose, it does not promise outcomes, and clinical judgment stays with Angelica Alcaraz, BSN, RN
What it does now
Someone can arrive at 11pm with a concern and no treatment name, describe it in the language they think in, get a straight answer, and open the booking cart on the right service before they put the phone down. That used to be a voicemail.