Schema LocalBusiness paso a paso (tutorial con código)

El schema LocalBusiness es una de las implementaciones técnicas SEO con mejor relación esfuerzo/impacto. 30 minutos de configuración correcta + rich snippets en Google + base sólida para SEO local. Esta guía cubre el código completo con casos por sector.

¿Qué es y por qué importa?

Schema.org es un vocabulario que Google y otros buscadores entienden para clasificar información de tu web. LocalBusiness es el tipo específico para negocios con ubicación física o área de servicio.

Con LocalBusiness bien implementado, Google sabe:

  • Qué tipo de negocio eres (restaurante, dentista, agencia, etc.)
  • Dónde estás físicamente (dirección + coordenadas)
  • Cuándo abres
  • A quién das servicio (área geográfica)
  • Cómo contactarte (teléfono, email, web)
  • Qué rango de precio manejas

Eso le permite mostrar rich snippets, alimentar Google Business Profile y rankear mejor en búsquedas locales.

Schema LocalBusiness básico (copy-paste)

Este es el código mínimo viable. Pégalo en el <head> de tu home (idealmente en todas las páginas), reemplazando los valores:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "LocalBusiness",
  "@id": "https://tudominio.com/#organization",
  "name": "Tu Negocio S.L.",
  "url": "https://tudominio.com/",
  "logo": "https://tudominio.com/assets/logo.png",
  "image": "https://tudominio.com/assets/foto-fachada.jpg",
  "description": "Descripción breve y honesta de tu negocio (160-300 caracteres).",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "Calle Ejemplo 1, bajo",
    "addressLocality": "Valencia",
    "addressRegion": "Valencia",
    "postalCode": "46001",
    "addressCountry": "ES"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": "39.4699",
    "longitude": "-0.3763"
  },
  "telephone": "+34900000000",
  "email": "info@tudominio.com",
  "priceRange": "€€",
  "openingHoursSpecification": [
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Monday","Tuesday","Wednesday","Thursday","Friday"],
      "opens": "09:00",
      "closes": "18:00"
    }
  ]
}
</script>

Cómo obtener los datos críticos

Coordenadas geo (latitude/longitude)

  1. Abre Google Maps.
  2. Busca tu dirección exacta.
  3. Click derecho sobre el marcador.
  4. Aparece "[lat], [long]" en la parte superior del menú contextual.
  5. Copia los dos números separados por coma.

Categoría @type específica

LocalBusiness es genérica. Cuanto más específica mejor. Algunos sub-tipos comunes:

SectorTipo específico
RestauranteRestaurant
CafeteríaCafeOrCoffeeShop
HotelHotel / LodgingBusiness
DentistaDentist
Médico / ClínicaMedicalClinic / Physician
VeterinarioVeterinaryCare
Despacho de abogadosAttorney / LegalService
Contable / AsesorAccountingService
Agencia inmobiliariaRealEstateAgent
Agencia marketing/SEOProfessionalService
Taller mecánicoAutoRepair
Fontanero/ElectricistaHomeAndConstructionBusiness
Peluquería/EstéticaHairSalon / BeautySalon
GimnasioSportsActivityLocation / ExerciseGym
Tienda físicaStore + sub-tipo específico

Lista completa: https://schema.org/LocalBusiness

Schema LocalBusiness COMPLETO con todos los campos

Para máxima información a Google:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Restaurant",
  "@id": "https://tudominio.com/#organization",
  "name": "Tu Restaurante",
  "alternateName": "Tu Restaurante Valencia",
  "url": "https://tudominio.com/",
  "logo": {
    "@type": "ImageObject",
    "url": "https://tudominio.com/logo.png",
    "width": 600,
    "height": 200
  },
  "image": [
    "https://tudominio.com/foto1.jpg",
    "https://tudominio.com/foto2.jpg",
    "https://tudominio.com/foto3.jpg"
  ],
  "description": "Restaurante mediterráneo en Ruzafa, Valencia...",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "Calle Sueca 32",
    "addressLocality": "Valencia",
    "addressRegion": "Valencia",
    "postalCode": "46006",
    "addressCountry": "ES"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": "39.4612",
    "longitude": "-0.3742"
  },
  "telephone": "+34960000000",
  "email": "reservas@tudominio.com",
  "priceRange": "€€",
  "openingHoursSpecification": [
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Tuesday","Wednesday","Thursday"],
      "opens": "13:00",
      "closes": "16:00"
    },
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Friday","Saturday"],
      "opens": "13:00",
      "closes": "23:30"
    }
  ],
  "servesCuisine": ["Mediterránea", "Valenciana"],
  "acceptsReservations": true,
  "hasMenu": "https://tudominio.com/carta/",
  "areaServed": {
    "@type": "City",
    "name": "Valencia"
  },
  "sameAs": [
    "https://www.facebook.com/tunegocio",
    "https://www.instagram.com/tunegocio",
    "https://www.tripadvisor.es/tunegocio"
  ],
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.7",
    "reviewCount": "234"
  }
}
</script>

Variantes por sector (4 ejemplos)

1. Clínica dental

"@type": "Dentist",
"medicalSpecialty": ["Implantology", "Orthodontics"],
"availableService": [
  {"@type": "MedicalProcedure", "name": "Implante dental"},
  {"@type": "MedicalProcedure", "name": "Ortodoncia invisible"}
]

2. Despacho abogados

"@type": "Attorney",
"areaServed": [
  {"@type": "City", "name": "Valencia"},
  {"@type": "City", "name": "Alicante"}
],
"knowsAbout": ["Derecho mercantil", "Derecho laboral", "Derecho fiscal"]

3. Agencia marketing/SEO

"@type": "ProfessionalService",
"makesOffer": [
  {
    "@type": "Offer",
    "itemOffered": {"@type": "Service", "name": "Diseño web"},
    "priceCurrency": "EUR",
    "price": "1200"
  },
  {
    "@type": "Offer",
    "itemOffered": {"@type": "Service", "name": "Posicionamiento SEO"},
    "priceCurrency": "EUR",
    "price": "350"
  }
]

4. Tienda física con e-commerce

"@type": "Store",
"paymentAccepted": ["Cash", "Credit Card", "Bizum"],
"currenciesAccepted": "EUR"

Cómo implementarlo en WordPress

Opción A: Yoast SEO

Yoast genera schema básico automáticamente. Rellena en Ajustes:

  • Ajustes → General → Información del sitio → "Es una empresa local" → SÍ
  • Rellena nombre, dirección, teléfono, etc.
  • Yoast inyecta el schema en cada página.

Opción B: Plugin Schema & Structured Data for WP

Más flexible. Permite custom schema por tipo de contenido. Gratis.

Opción C: Manualmente con código

Si tienes desarrollador o tema custom, inyecta el JSON-LD desde functions.php o en el header del tema:

add_action('wp_head', function() {
  $schema = [/* aquí tu objeto */];
  echo '<script type="application/ld+json">'
     . wp_json_encode($schema)
     . '</script>';
});

Validación obligatoria

  1. Tras implementar, abre Rich Results Test: https://search.google.com/test/rich-results
  2. Pega tu URL.
  3. Esperar resultado.
  4. Errores: rojos, hay que arreglar.
  5. Warnings: amarillos, opcionales pero recomendados.
  6. Confirmar que "LocalBusiness" aparece como tipo detectado.

Si hay errores no críticos, Google aún acepta el schema pero pierdes el rich snippet.

Errores típicos

  • ❌ Falsificar reseñas con aggregateRating inventado. Google lo penaliza duro y puede sacarte de rich snippets para siempre.
  • ❌ NAP del schema distinto del NAP de la web/GBP. Consistencia obligatoria.
  • priceRange con números literales (€10-50). Solo símbolos: €, €€, €€€, €€€€.
  • ❌ Horarios en formato no estándar. Usar HH:MM 24h.
  • ❌ Coordenadas inventadas. Tienen que coincidir con la dirección.
  • ❌ Schema en una página pero NAP distinto en el footer.

Preguntas frecuentes

¿Schema LocalBusiness mejora el SEO?

Sí, indirectamente. Le da contexto a Google y activa rich snippets. Solo no te sube de posición; combinado con GBP y SEO técnico, sí mueve resultados.

¿JSON-LD o microdata?

JSON-LD. Recomendado oficialmente por Google desde 2017.

¿Dónde inyecto el schema?

En el head de cada página, dentro de un <script type="application/ld+json">.

¿Cómo verifico que funciona?

Google Rich Results Test. Pega tu URL y valida.

¿Quieres que implementemos schema completo en tu web? Es parte de cada proyecto de diseño web y de las auditorías SEO.

¿Quieres que te lo implementemos?

Schema completo + validación Rich Results + integración con Google Business Profile.