← Back to studioCase study · 2026

Petite Salón. .

From an Instagram with local followers to a site that shows up when somebody Googles "salón de belleza Heredia" — with measurable WhatsApp CTAs, a site-wide footer, and an admin so the owner never has to touch code.

Petite Salón site hero with the services section
The project

A real salon. A site Google can find.

Client
Petite Salón
Industry
Boutique beauty salon · Mercedes, Heredia
Year
2026
Scope
Design + development + local SEO + analytics + maintenance
Execution time
4 weeks
URLs in sitemap
11
Hero weight (before → after)
15.6 MB → 345 KB
Measurable conversion
WhatsApp + GA4

⚠ Some values are real first-month numbers; others stay as placeholders until we have 3 months of GSC + GA4 data.

The problem

The business existed. The digital presence didn't.

  • 01The business ran 100% on Instagram + WhatsApp — no website, no Google Search Console, no way to measure how many people actually arrived via local searches.
  • 02The highest-volume head queries ("salón de belleza Heredia", "salón de uñas Heredia", "peluquería Heredia") were owned by generic directories and competitors with basic SEO — Petite ranked for none of them.
  • 03The owner, Cata, didn't want to become a webmaster: the site had to maintain itself, update monthly promos and serve new clients without her touching code or depending on us for every change.
  • 04Zero lead infrastructure: even when someone landed on the site, there was no way to know which CTA converted, which service drove the most interest, or which page actually produced inquiries.
The approach

4 decisions to win the local head term.

01

Local head term first

Every page's title leads with the literal query Cata needs to win ("Salón de belleza en Heredia", "Salón de pelo en Heredia", "Peluquería en Heredia"). 2 new landing pages dedicated to the highest-volume head queries — one menu-of-menus (CollectionPage schema) and one nails-focused (Service schema).

02

Complete, honest schema

BeautySalon + FAQPage + Service + CollectionPage + BreadcrumbList across every relevant page, with `inLanguage: es-CR` and `knowsAbout` extended with the 6 head queries Cata works. Google understands exactly what the salon does and where.

03

WhatsApp as a measurable close channel

Every CTA pushes to WhatsApp with a pre-filled message tailored to the context (service, promo, page). A global JS listener reports each click as a `whatsapp_click` event in GA4 with `page_path`, `cta_label` and `link_url` — Cata can see weekly which page drives the most leads.

04

Auto-deploy + no-code admin

GitHub → Vercel push-to-deploy on every commit. Custom admin panel so Cata can update monthly promos without editing a single file. ImprovMX for email forwarding hola@ → her Gmail. Maintenance included in the monthly plan.

Delivered

9 pieces in production.

ViteReact 19SupabaseVercelSchema.orgGA4ImprovMX
  • Full site in Vite + React 19 + Supabase + Vercel — boutique design built for the salon
  • 9 SEO-optimized pages: home + 6 deep service pages + 2 head-query landings (salón-de-belleza, salón-de-uñas)
  • Complete schema: BeautySalon, FAQPage, Service, CollectionPage, BreadcrumbList — every rich result eligible
  • Site-wide footer with 8 service categories + contact + socials + legal on every route
  • Floating WhatsApp button on every page + brand-green CTA recolor for maximum visibility
  • GA4 + custom WhatsApp-click tracking with params to measure which CTAs and pages convert
  • hola@petitesaloncr.com email with forwarding to Gmail via ImprovMX (DNS + SPF configured)
  • Hero performance: catalog images dropped from 15.6 MB total to 345 KB (-97%) via Supabase image transform
  • GitHub auto-deploy + promo admin panel + technical handoff documented
Testimonial
[TODO: 1-2 lines from Cata, the owner — ideally with a concrete stat: 'since the relaunch we have X% more WhatsApp inquiries.']
[TODO: Catalina Villalobos] · Petite Salón

Does your salon need the ?

If you run a local business that lives on Instagram but never shows up on Google, we'll audit it free in 48h and propose the shortest path to indexing + measurable leads.