La mayoria de las guias del marcado de esquema LocalBusiness cubren los campos obvios: name, address, telephone, openingHours. La mayoria de las implementaciones se detienen alli. Y la mayoria de los negocios que implementan solo esos campos aun son invisibles para los motores de IA, no porque su esquema este mal, sino porque esta incompleto de las maneras que importan especificamente para la citacion de IA.
Los campos que los motores de IA ponderan mas fuertemente para la resolucion de consultas locales son los especificos de ubicacion: geo, hasMap, areaServed y sameAs. Estos son los campos que permiten a los motores de IA resolver tu negocio como una entidad geografica inequivoca, hacerlo coincidir con consultas especificas de ubicacion y confirmar su existencia en multiples fuentes autorizadas. Esta guia te proporciona la implementacion completa y copia-pega de JSON-LD, incluyendo cada campo de ubicacion, con una explicacion de lo que cada campo hace por tu visibilidad de IA.
Por que los campos de ubicacion son unicamente importantes para la IA
Las guias tradicionales del esquema de SEO tratan las coordenadas geo como opcionales. Para los resultados enriquecidos de Google, las coordenadas son efectivamente opcionales, Google puede codificar geocodigo tu direccion. Para los motores de IA, las coordenadas sirven una funcion fundamentalmente diferente: desambiguacion de entidades.
Considera un negocio llamado "The Blue Door Café." Puede haber docenas de negocios con este nombre o nombres similares en toda Europa. Cuando un motor de IA recibe la consulta "café cerca de mi con buen cafe", necesita resolver la entidad correcta. Las cadenas de direccion ayudan, pero son propensas a inconsistencias de formato, "123 High St" versus "123 High Street" versus "123 High St, 1st floor" son tecnicamente cadenas diferentes incluso si describen la misma ubicacion.
Las geocoordenadas son inequivocas. "latitude": 52.3676, "longitude": 4.9041 no puede ser confundido con ningun otro punto en la Tierra. Cuando tu esquema incluye coordenadas precisas que coinciden con tu pin de Google Business Profile y tu ubicacion de Apple Maps, los motores de IA pueden resolver tu entidad con certeza y la confianza de citacion aumenta en consecuencia.
Este proceso de resolucion de entidades se explica en detalle en nuestra guia sobre como Gemini recomienda negocios locales y en el contexto mas amplio de que significa AEO para negocios locales.
The Complete LocalBusiness JSON-LD Implementation
The following is a complete, production-ready JSON-LD block for a LocalBusiness. Adapt the @type to your specific business type (see the section below on choosing the right type). Every field is annotated with its purpose.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "LocalBusiness",
"name": "Maison Durand",
"alternateName": "Maison Durand Brasserie",
"description": "Traditional French brasserie in central Lyon serving seasonal Lyonnais cuisine since 1984. Reservations available for groups.",
"url": "https://www.maisondurand.fr",
"telephone": "+33-4-72-00-00-00",
"email": "contact@maisondurand.fr",
"address": {
"@type": "PostalAddress",
"streetAddress": "14 Rue Mercière",
"addressLocality": "Lyon",
"addressRegion": "Auvergne-Rhône-Alpes",
"postalCode": "69002",
"addressCountry": "FR"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 45.7640,
"longitude": 4.8357
},
"hasMap": "https://maps.google.com/?q=45.7640,4.8357",
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday"],
"opens": "12:00",
"closes": "14:30"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday"],
"opens": "19:00",
"closes": "22:30"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Friday", "Saturday"],
"opens": "12:00",
"closes": "23:00"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Sunday"],
"opens": "12:00",
"closes": "15:00"
}
],
"servesCuisine": ["French", "Lyonnais"],
"priceRange": "€€",
"menu": "https://www.maisondurand.fr/menu",
"acceptsReservations": true,
"areaServed": {
"@type": "City",
"name": "Lyon"
},
"image": [
"https://www.maisondurand.fr/images/exterior.jpg",
"https://www.maisondurand.fr/images/interior.jpg",
"https://www.maisondurand.fr/images/menu-dish.jpg"
],
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.7",
"reviewCount": "284",
"bestRating": "5",
"worstRating": "1"
},
"sameAs": [
"https://www.google.com/maps/place/Maison+Durand+Lyon",
"https://www.facebook.com/MaisonDurandLyon",
"https://www.tripadvisor.com/Restaurant_Review-maisondurand",
"https://www.yelp.com/biz/maison-durand-lyon"
],
"founder": {
"@type": "Person",
"name": "Pierre Durand"
},
"foundingDate": "1984",
"currenciesAccepted": "EUR",
"paymentAccepted": "Cash, Credit Card, Visa, Mastercard",
"amenityFeature": [
{
"@type": "LocationFeatureSpecification",
"name": "Outdoor seating",
"value": true
},
{
"@type": "LocationFeatureSpecification",
"name": "Wheelchair accessible",
"value": true
},
{
"@type": "LocationFeatureSpecification",
"name": "Wi-Fi",
"value": true
}
]
}
</script>
[Image: Browser developer tools showing the Elements panel with the HTML head section open, and the LocalBusiness JSON-LD script tag visible and expanded, showing the geo, sameAs, and openingHoursSpecification fields highlighted]
Desglose campo por campo: los campos de ubicacion que importan
geo, geocoordenadas
"geo": {
"@type": "GeoCoordinates",
"latitude": 45.7640,
"longitude": 4.8357
}
Lo que hace: proporciona la ubicacion geografica precisa de tu negocio como un par de coordenadas legible por maquina. Los motores de IA lo utilizan para desambiguacion de entidades y para resolucion de consultas especificas de ubicacion.
Como encontrar tus coordenadas: abre Google Maps, haz clic derecho en la ubicacion de tu negocio y selecciona "Que hay aqui". Las coordenadas aparecen en la parte inferior de la pantalla. Alternativamente, la ubicacion del pin de tu Google Business Profile tiene coordenadas accesibles a traves del panel de control de GBP.
Error comun: usar coordenadas aproximadas (por ejemplo, coordenadas del centro de la ciudad) en lugar de la ubicacion real de tu edificio. Los motores de IA hacen referencias cruzadas de coordenadas entre fuentes, una coincidencia imprecisa reduce la confianza.
hasMap, enlace de mapa
"hasMap": "https://maps.google.com/?q=45.7640,4.8357"
Lo que hace: proporciona un enlace directo a tu ubicacion en una plataforma de mapeo. Esto sirve como una senal de verificacion, los motores de IA y rastreadores pueden seguir este enlace para confirmar tu ubicacion geografica.
Mejor practica: usa una URL de Google Maps basada en coordenadas en lugar de una URL basada en nombre de lugar, ya que las coordenadas son inequivocas. Tambien puedes agregar un segundo valor hasMap que apunte a tu ubicacion de MapAtlas u OpenStreetMap para corroboracion adicional.
areaServed, area de servicio
"areaServed": {
"@type": "City",
"name": "Lyon"
}
Para negocios con un radio de entrega o servicio, usa GeoCircle:
"areaServed": {
"@type": "GeoCircle",
"geoMidpoint": {
"@type": "GeoCoordinates",
"latitude": 45.7640,
"longitude": 4.8357
},
"geoRadius": "15000"
}
Lo que hace: le dice a los motores de IA el area geografica que sirve tu negocio. Esto es esencial para negocios de servicios (plomeros, limpiadores, servicios de entrega) que cubren un area mas alla de su direccion fisica, y para coincidencia de consultas "cerca de mi". Un restaurante podria usar City. Un servicio de entrega que cubre un radio de 15km usaria GeoCircle con un radio en metros.
Error comun: omitir areaServed completamente. Sin ella, los motores de IA solo pueden asociar tu negocio con consultas que contengan tu direccion exacta o localidad, no con el area mas amplia que realmente sirves.
sameAs, enlaces de perfil autorizado
"sameAs": [
"https://www.google.com/maps/place/YOUR_PLACE_ID",
"https://www.facebook.com/yourbusiness",
"https://www.tripadvisor.com/Restaurant_Review-yourbusiness",
"https://www.yelp.com/biz/your-business"
]
Lo que hace: crea una red de corroboracion, enlaces de tu esquema a la misma entidad que aparece en plataformas externas autorizadas. Los motores de IA siguen estos enlaces para verificar que la entidad en tu sitio web es la misma que la entidad en Google Maps, Facebook y TripAdvisor. Cada fuente corroborante aumenta la confianza de citacion.
Enlaces sameAs minimos recomendados: Google Business Profile, Facebook, un directorio relevante de la industria (TripAdvisor para hospitalidad, Zocdoc para salud, Houzz para servicios del hogar).
Error comun: incluir enlaces sameAs que van a paginas donde tu informacion de NAP no coincide con tu sitio web. Una falta de coincidencia en un objetivo sameAs reduce activamente la confianza en lugar de aumentarla.
La imagen completa de consistencia de NAP se cubre en nuestra guia de consistencia de NAP para busqueda de IA.
Elegir el @type correcto
LocalBusiness es el tipo base. Usar un subtipo mas especifico proporciona senales de categoria mejores a los motores de IA. Los subtipos mas comunmente usados:
| Tipo de negocio | Valor @type |
|---|---|
| Restaurante, cafe, bar | Restaurant, CafeOrCoffeeShop, BarOrPub |
| Hotel, posada, albergue | Hotel, BedAndBreakfast, Hostel |
| Doctor, clinica | MedicalClinic, Physician |
| Dentista | Dentist |
| Gimnasio, estudio de fitness | SportsActivityLocation, HealthClub |
| Abogado | LegalService |
| Contador | AccountingService |
| Tienda minorista | Store o mas especifico: ClothingStore, ElectronicsStore |
| Museo, galeria | Museum |
| Atraccion turistica | TouristAttraction |
| Agencia inmobiliaria | RealEstateAgent |
Si tu tipo especifico no se enumera aqui, verifica la jerarquia completa del tipo de Schema.org en schema.org/LocalBusiness.
Como anadir JSON-LD a tu sitio web
Coloca el bloque <script type="application/ld+json"> dentro del elemento <head> de cada pagina que represente tu negocio, como minimo tu pagina de inicio y tu pagina de contacto/ubicacion.
Sitios HTML estaticos: pega la etiqueta de script directamente en el <head> de tu archivo HTML.
WordPress: usa los complementos Yoast SEO o RankMath (ambos tienen campos de esquema LocalBusiness en su configuracion) o agrega el JSON-LD sin procesar a traves de un complemento de inyeccion de encabezado.
Next.js / React: agrega la etiqueta de script dentro del <head> usando next/head o el API de metadatos del enrutador de aplicaciones con un elemento <script>:
export default function Page() {
const schema = {
"@context": "https://schema.org",
"@type": "LocalBusiness",
// ... all fields
};
return (
<>
<script
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(schema) }}
/>
{/* page content */}
</>
);
}
Shopify: agrega a traves de la seccion <head> del archivo theme.liquid o usa una aplicacion de marcado de esquema de Shopify App Store.
[Image: Screenshot of search.google.com/test/rich-results showing a LocalBusiness schema validation result with a green "Valid items detected" message and the detected fields listed: name, address, geo, openingHoursSpecification, aggregateRating]
Verificacion de tu implementacion
Despues de anadir tu JSON-LD, verifica lo con dos herramientas:
1. Prueba de resultados enriquecidos de Google, search.google.com/test/rich-results
Introduce tu URL de pagina o pega tu JSON-LD directamente. La herramienta muestra tipos de esquema detectados, valida todos los campos y marca errores. Un resultado valido de LocalBusiness significa que Google puede leer tu marcado correctamente.
2. Validador de Schema.org, validator.schema.org
Mas estricto que la herramienta de Google. Marcara propiedades deprecadas y desajustes de tipo que la prueba de resultados enriquecidos a veces pierde.
3. Verificador de AEO de MapAtlas, /aeo-checker
Audita especificamente las senales de citacion de IA, incluyendo campos de ubicacion, consistencia de NAP contra fuentes externas y actualidad de resenas, que la prueba de resultados enriquecidos no cubre. Utiliza esto despues de la validacion de Google para verificar la capa especifica de IA.
Errores comunes que socavan la visibilidad de IA
Usar horarios de apertura en prosa en lugar de openingHoursSpecification: "Lun-Vie 9am-6pm, Sab 10am-4pm, cerrado domingo" es legible por humanos pero no por maquina. Los motores de IA no pueden analizarlo de manera confiable para filtrado de consultas temporales.
Omitir geo porque tu direccion esta completa: la direccion es para comprension humana. Las geocoordenadas son para resolucion de maquina. Necesitas ambas.
Objetivos sameAs desajustados: si tu pagina de Facebook tiene un numero de telefono diferente que tu sitio web, el enlace sameAs crea una contradiccion en lugar de corroboracion. Arreglalo la fuente antes de vincularse a ella.
Valores aggregateRating obsoletos: algunas implementaciones codifican el recuento de calificaciones. Un "reviewCount": "47" estatico que fue preciso en 2023 pero es incorrecto ahora crea una senal de calidad de datos que reduce la confianza de IA. Utiliza un valor dinamico u omite el campo si no puedes mantenerlo actualizado.
Multiples bloques JSON-LD por pagina: si tienes multiples scripts de esquema en una pagina, asegurate de que no se contradigan entre si. Una pagina con un bloque que dice "telephone": "+33-4-72-00-00-00" y otro bloque que dice "telephone": "+33 4 72 00 00 01" crea un conflicto.
El efecto compuesto a largo plazo
El esquema JSON-LD no es una tactica unica. Cada vez que un motor de IA rastrea tu sitio web y encuentra un bloque de esquema completo, consistente y preciso, la puntuacion de confianza para tu entidad aumenta de forma incremental. Con el tiempo, este compuesto construye una presencia de citacion que se vuelve auto-reforzante: mas citaciones generan mas visitas, mas resenas, mas menciones, que a su vez generan mas senal estructurada para que los motores de IA encuentren.
La guia completa de AEO para negocios locales camina a traves de como construir este sistema compuesto en todos los canales que alimentan los motores de citacion de IA, no solo tu esquema de sitio web.
Comienza con el verificador de AEO de MapAtlas gratuito para ver tu puntuacion actual de integridad del esquema, luego usa la solucion de visibilidad de busqueda de IA para implementar y monitorear la pila completa de datos estructurados. El JSON-LD anterior es la fundacion, construye sobre ella consistentemente y tu presencia de citacion de IA crecera con cada actualizacion del motor.

