Datos estructurados de recetas (Recipe, HowTo e ItemList)

Ayuda a los usuarios a encontrar tu contenido sobre recetas ofreciendo a Google esa información mediante datos estructurados. Cuando proporcionas información (por ejemplo, puntuaciones de los autores de las reseñas, tiempos de preparación y de cocción e información nutricional), Google puede entender mejor tu receta y presentarla a los usuarios de forma que les interese. Las recetas pueden aparecer en los resultados de la Búsqueda de Google y de Google Imágenes.

Ilustración de cómo pueden aparecer los resultados enriquecidos de recetas en la Búsqueda de Google. Contiene 4 resultados enriquecidos de diferentes sitios web, con detalles sobre cuánto se tarda en cocinar la receta, una imagen e información de reseñas. Ilustración de cómo pueden aparecer las recetas en Google Imágenes. Hay 6 resultados de imágenes que muestran diferentes alimentos, y 3 de ellos contienen una insignia de receta que indica al usuario que se trata de una receta.

En función de cómo marques tu contenido, es posible que tus recetas puedan optar a las siguientes mejoras:

Mejoras en las recetas
Recetas guiadas: permite que el Asistente de Google guíe a los usuarios por tus recetas en Google Home y pantallas inteligentes añadiendo datos estructurados de Recipe. Es obligatorio usar algunas propiedades adicionales en las recetas guiadas, pero solo se recomienda emplearlas para que aparezcan en la Búsqueda de Google. Recuerda añadir recipeIngredient y recipeInstructions. Si añades la propiedad video, también debes incluir la propiedad contentUrl.

Para obtener más información sobre las recetas en el Asistente de Google, consulta cómo puedes crear acciones a partir de contenido web.

Ilustración de cómo pueden aparecer las recetas guiadas en Google Home mediante el Asistente de Google. Muestra al Asistente de Google respondiendo a la solicitud de un usuario con una lista de posibles recetas para cocinar.
Carrusel de alojamiento de recetas: permite que los usuarios exploren las páginas de la galería de recetas añadiendo datos estructurados de ItemList. Ilustración de cómo puede aparecer un carrusel de host de recetas en la Búsqueda de Google. Muestra 3 recetas diferentes del mismo sitio web en formato de carrusel, de forma que los usuarios pueden consultar y seleccionar una receta específica.

Cómo añadir datos estructurados

Los datos estructurados son un formato estandarizado con el que se puede proporcionar información sobre una página y clasificar su contenido. Consulta cómo funcionan los datos estructurados si aún no te has familiarizado con ellos.

A continuación se explica a grandes rasgos cómo crear, probar y publicar datos estructurados. Si necesitas una guía detallada para añadir datos estructurados a una página web, consulta el codelab de datos estructurados.

  1. Añade las propiedades obligatorias. Consulta más información sobre dónde insertar datos estructurados en una página en función del formato que estés utilizando.
  2. Sigue las directrices.
  3. Valida tu código con la prueba de resultados enriquecidos y corrige los errores críticos. Te recomendamos que también corrijas los problemas no críticos que puedan marcarse en la herramienta, ya que pueden ayudar a mejorar la calidad de los datos estructurados (sin embargo, esto no es necesario para que se muestren los resultados enriquecidos).
  4. Crea varias páginas que incluyan tus datos estructurados y comprueba cómo las ve Google con la herramienta de inspección de URLs. Asegúrate de que Google pueda acceder a tu página y de que no esté bloqueada por un archivo robots.txt, por la etiqueta noindex ni por requisitos de inicio de sesión. Si la página se ve bien, puedes solicitar que Google vuelva a rastrear tus URLs.
  5. Para que Google siempre tenga la versión actualizada de tus páginas, te recomendamos que envíes un sitemap. Puedes automatizar este envío con la API Sitemap de Search Console.

Ejemplos

A continuación, se muestran algunos ejemplos de recetas que utilizan el código JSON-LD.

Recetas guiadas

A continuación, se muestra un ejemplo de una página que puede aparecer en la Búsqueda de Google y como receta guiada en el Asistente.

<html>
  <head>
    <title>Party Coffee Cake</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "Recipe",
      "name": "Party Coffee Cake",
      "image": [
        "https://example.com/photos/1x1/photo.jpg",
        "https://example.com/photos/4x3/photo.jpg",
        "https://example.com/photos/16x9/photo.jpg"
      ],
      "author": {
        "@type": "Person",
        "name": "Mary Stone"
      },
      "datePublished": "2018-03-10",
      "description": "This coffee cake is awesome and perfect for parties.",
      "prepTime": "PT20M",
      "cookTime": "PT30M",
      "totalTime": "PT50M",
      "keywords": "cake for a party, coffee",
      "recipeYield": "10",
      "recipeCategory": "Dessert",
      "recipeCuisine": "American",
      "nutrition": {
        "@type": "NutritionInformation",
        "calories": "270 calories"
      },
      "recipeIngredient": [
        "2 cups of flour",
        "3/4 cup white sugar",
        "2 teaspoons baking powder",
        "1/2 teaspoon salt",
        "1/2 cup butter",
        "2 eggs",
        "3/4 cup milk"
        ],
      "recipeInstructions": [
        {
          "@type": "HowToStep",
          "name": "Preheat",
          "text": "Preheat the oven to 350 degrees F. Grease and flour a 9x9 inch pan.",
          "url": "https://example.com/party-coffee-cake#step1",
          "image": "https://example.com/photos/party-coffee-cake/step1.jpg"
        },
        {
          "@type": "HowToStep",
          "name": "Mix dry ingredients",
          "text": "In a large bowl, combine flour, sugar, baking powder, and salt.",
          "url": "https://example.com/party-coffee-cake#step2",
          "image": "https://example.com/photos/party-coffee-cake/step2.jpg"
        },
        {
          "@type": "HowToStep",
          "name": "Add wet ingredients",
          "text": "Mix in the butter, eggs, and milk.",
          "url": "https://example.com/party-coffee-cake#step3",
          "image": "https://example.com/photos/party-coffee-cake/step3.jpg"
        },
        {
          "@type": "HowToStep",
          "name": "Spread into pan",
          "text": "Spread into the prepared pan.",
          "url": "https://example.com/party-coffee-cake#step4",
          "image": "https://example.com/photos/party-coffee-cake/step4.jpg"
        },
        {
          "@type": "HowToStep",
          "name": "Bake",
          "text": "Bake for 30 to 35 minutes, or until firm.",
          "url": "https://example.com/party-coffee-cake#step5",
          "image": "https://example.com/photos/party-coffee-cake/step5.jpg"
        },
        {
          "@type": "HowToStep",
          "name": "Enjoy",
          "text": "Allow to cool and enjoy.",
          "url": "https://example.com/party-coffee-cake#step6",
          "image": "https://example.com/photos/party-coffee-cake/step6.jpg"
        }
      ],
      "aggregateRating": {
        "@type": "AggregateRating",
        "ratingValue": "5",
        "ratingCount": "18"
      },
      "video": {
        "@type": "VideoObject",
        "name": "How to make a Party Coffee Cake",
        "description": "This is how you make a Party Coffee Cake.",
        "thumbnailUrl": [
          "https://example.com/photos/1x1/photo.jpg",
          "https://example.com/photos/4x3/photo.jpg",
          "https://example.com/photos/16x9/photo.jpg"
         ],
        "contentUrl": "https://www.example.com/video123.mp4",
        "embedUrl": "https://www.example.com/videoplayer?video=123",
        "uploadDate": "2018-02-05T08:00:00+08:00",
        "duration": "PT1M33S",
        "interactionStatistic": {
          "@type": "InteractionCounter",
          "interactionType": { "@type": "WatchAction" },
          "userInteractionCount": 2347
        },
        "expires": "2019-02-05T08:00:00+08:00"
      }
    }
    </script>
  </head>
  <body>
  </body>
</html>

Receta en la Búsqueda

A continuación, se muestra un ejemplo de una página que puede mostrarse en la Búsqueda.

<html>
  <head>
    <title>Non-Alcoholic Piña Colada</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "Recipe",
      "name": "Non-Alcoholic Piña Colada",
      "image": [
      "https://example.com/photos/1x1/photo.jpg",
      "https://example.com/photos/4x3/photo.jpg",
      "https://example.com/photos/16x9/photo.jpg"
      ],
      "author": {
        "@type": "Person",
        "name": "Mary Stone"
      },
      "datePublished": "2018-03-10",
      "description": "This non-alcoholic pina colada is everyone's favorite!",
      "recipeCuisine": "American",
      "prepTime": "PT1M",
      "cookTime": "PT2M",
      "totalTime": "PT3M",
      "keywords": "non-alcoholic",
      "recipeYield": "4 servings",
      "recipeCategory": "Drink",
      "nutrition": {
        "@type": "NutritionInformation",
        "calories": "120 calories"
      },
      "aggregateRating": {
        "@type": "AggregateRating",
        "ratingValue": "5",
        "ratingCount": "18"
      },
      "recipeIngredient": [
        "400ml of pineapple juice",
        "100ml cream of coconut",
        "ice"
      ],
      "recipeInstructions": [
        {
          "@type": "HowToStep",
          "name": "Blend",
          "text": "Blend 400ml of pineapple juice and 100ml cream of coconut until smooth.",
          "url": "https://example.com/non-alcoholic-pina-colada#step1",
          "image": "https://example.com/photos/non-alcoholic-pina-colada/step1.jpg"
        },
        {
          "@type": "HowToStep",
          "name": "Fill",
          "text": "Fill a glass with ice.",
          "url": "https://example.com/non-alcoholic-pina-colada#step2",
          "image": "https://example.com/photos/non-alcoholic-pina-colada/step2.jpg"
        },
        {
          "@type": "HowToStep",
          "name": "Pour",
          "text": "Pour the pineapple juice and coconut mixture over ice.",
          "url": "https://example.com/non-alcoholic-pina-colada#step3",
          "image": "https://example.com/photos/non-alcoholic-pina-colada/step3.jpg"
        }
      ],
      "video": {
        "@type": "VideoObject",
        "name": "How to Make a Non-Alcoholic Piña Colada",
        "description": "This is how you make a non-alcoholic piña colada.",
        "thumbnailUrl": [
          "https://example.com/photos/1x1/photo.jpg",
          "https://example.com/photos/4x3/photo.jpg",
          "https://example.com/photos/16x9/photo.jpg"
         ],
        "contentUrl": "https://www.example.com/video123.mp4",
        "embedUrl": "https://www.example.com/videoplayer?video=123",
        "uploadDate": "2018-02-05T08:00:00+08:00",
        "duration": "PT1M33S",
        "interactionStatistic": {
          "@type": "InteractionCounter",
          "interactionType": { "@type": "WatchAction" },
          "userInteractionCount": 2347
        },
        "expires": "2019-02-05T08:00:00+08:00"
       }
    }
    </script>
  </head>
  <body>
  </body>
</html>

A continuación, se muestra el ejemplo de una página principal de recetas (donde aparece la lista de recetas) con datos estructurados de itemList. Este contenido puede mostrarse en una cuadrícula en los resultados de la Búsqueda.

<html>
  <head>
    <title>Grandma's Best Pie Recipes</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "ItemList",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "url": "https://example.com/apple-pie.html"
        },
        {
          "@type": "ListItem",
          "position": 2,
          "url": "https://example.com/blueberry-pie.html"
        },
        {
          "@type": "ListItem",
          "position": 3,
          "url": "https://example.com/cherry-pie.html"
        }]
    }
    </script>
  </head>
  <body>
  </body>
</html>

Directrices

Debes seguir las directrices generales de datos estructurados para que tu receta pueda aparecer en resultados de la Búsqueda. Si quieres que la receta aparezca como una receta guiada en el Asistente, asegúrate de que tu contenido cumple la política de restricciones de contenido del Asistente.

A continuación se indican directrices a las que están sujetos los datos estructurados de Recipe.

  • Etiqueta con datos estructurados de Recipe para contenido sobre cómo preparar platos concretos. Por ejemplo, "exfoliante facial" o "ideas para fiestas" no son nombres válidos para un plato.
  • Para que las recetas aparezcan en un carrusel o en una cuadrícula, debes seguir estas directrices:
    • Proporciona datos estructurados de ItemList para resumir las recetas de tu lista. Puedes proporcionar datos estructurados de ItemList separados o juntos con datos estructurados de recetas.
    • Tu sitio debe tener una página de resumen en la que se enumeren todas las recetas de la colección. Por ejemplo, cuando un usuario hace clic en el enlace de resumen de los resultados de búsqueda, se le redirige correctamente a una página de tu sitio en la que se enumeran las recetas relacionadas con su búsqueda.

Definiciones de tipos de datos estructurados

Debes incluir las propiedades obligatorias para que tu contenido pueda mostrarse como un resultado enriquecido en la Búsqueda de Google. También puedes incluir las propiedades recomendadas para añadir más información sobre tu contenido, lo cual puede ayudar a mejorar la experiencia de usuario.

Recipe

Incluye etiquetas en el contenido de tu receta con las siguientes propiedades del tipo Recipe de schema.org. Puedes consultar la definición completa de Recipe en schema.org/Recipe. Las propiedades que admite Google son las siguientes:

Propiedades obligatorias
image

URL o ImageObject

Es la imagen del plato terminado.

Directrices de imágenes adicionales:

  • Cada página debe contener al menos una imagen (con o sin etiquetas). Google elegirá la mejor imagen para mostrarla en los resultados de búsqueda teniendo en cuenta su relación de aspecto y su resolución.
  • Las URLs de imagen deben poder rastrearse e indexarse. Comprueba que Google pueda acceder a tus URLs mediante la herramienta de inspección de URLs.
  • Las imágenes deben ser representativas del contenido etiquetado.
  • Las imágenes deben estar en un formato de archivo compatible con Google Imágenes.
  • Para obtener los mejores resultados, recomendamos proporcionar varias imágenes de alta resolución (mínimo de 50.000 píxeles al multiplicar la anchura y la altura) con las siguientes relaciones de aspecto: 16x9, 4x3 y 1x1.

Por ejemplo:

"image": [
  "https://example.com/photos/1x1/photo.jpg",
  "https://example.com/photos/4x3/photo.jpg",
  "https://example.com/photos/16x9/photo.jpg"
]
name

Text

Indica el nombre del plato.

Propiedades recomendadas
aggregateRating

AggregateRating

Es la anotación de la puntuación media de la reseña asignada al artículo. Sigue las directrices de fragmentos de reseñas y la lista de propiedades de AggregateRating obligatorias y recomendadas.

Si los datos estructurados de Recipe contienen una sola reseña, el nombre del autor de la reseña debe ser una persona u organización válidas. Por ejemplo, no se puede asignar el nombre "50 % de descuento en ingredientes" a un autor de una reseña.

author

Person o Organization

Es el nombre de la persona u organización que escribió la receta. Para ayudar a Google a identificar mejor a los autores en distintas funciones, te recomendamos que sigas las prácticas recomendadas para etiquetar autores.

cookTime

Duration

Indica, en formato ISO 8601, el tiempo que lleva cocinar el plato.

Úsalos siempre en combinación con prepTime.

datePublished

Date

Indica, en formato ISO 8601, la fecha en que se publicó la receta.

description

Text

Es un breve resumen de la descripción del plato.

keywords

Text

Otros términos para tu receta, como la temporada ("verano"), las fiestas ("Navidad") u otros descriptores ("rápido", "fácil", "auténtico").

Directrices adicionales

  • Separa con comas las entradas múltiples que incluyas en la lista de palabras clave.
  • No uses una etiqueta que sea recipeCategory o recipeCuisine.

    No recomendado:

    
    "keywords": "dessert, American"
    

    Recomendado:

    
    "keywords": "winter apple pie, nutmeg crust"
    
nutrition.calories

Energy

Indica el número de calorías de cada porción que se obtiene con esta receta. Si defines nutrition.calories, también debes indicar con recipeYield el número de porciones.

prepTime

Duration

Indica el tiempo que lleva preparar los ingredientes y los utensilios necesarios para hacer un plato, en formato ISO 8601.

Úsalos siempre en combinación con cookTime.

recipeCategory

Text

Indica el tipo de comida o plato de la receta. Por ejemplo: "cena", "plato principal", "postre", "aperitivo", etc.

recipeCuisine

Text

Es la región asociada con la receta. Por ejemplo, "francesa", "mediterránea" o "norteamericana".

recipeIngredient

Text

Indica un ingrediente utilizado en la receta.

Por ejemplo:


"recipeIngredient": [
  "1 (15 ounce) package double crust ready-to-use pie crust",
  "6 cups thinly sliced, peeled apples (6 medium)",
  "3/4 cup sugar",
  "2 tablespoons all-purpose flour",
  "3/4 teaspoon ground cinnamon",
  "1/4 teaspoon salt",
  "1/8 teaspoon ground nutmeg",
  "1 tablespoon lemon juice"
]

Directrices adicionales:

  • Incluye solo el texto del ingrediente que sea necesario para hacer la receta.
  • No incluyas información innecesaria, como una definición del ingrediente.
recipeInstructions

HowToStep, HowToSection o Text

Incluye los pasos para preparar el plato.

Hay varias opciones para definir el valor de recipeInstructions. Recomendamos el uso de HowToStep. También se puede utilizar HowToSection para agrupar HowToSteps cuando la receta tiene secciones.

  • HowToStep: especifica los pasos de esta receta con HowToStep.
    
    "recipeInstructions": [
      {
        "@type": "HowToStep",
        "name": "Preheat",
        "text": "Heat oven to 425°F.",
        "url": "https://example.com/recipe#step1",
        "image": "https://example.com/photos/recipe/step1.jpg"
      }, {
        "@type": "HowToStep",
        "name": "Prepare crust",
        "text": "Place 1 pie crust in ungreased 9-inch glass pie plate, pressing firmly against side and bottom.",
        "url": "https://example.com/recipe#step2",
        "image": "https://example.com/photos/recipe/step2.jpg"
      }, {
        "@type": "HowToStep",
        "name": "Make filling",
        "text": "In large bowl, gently mix filling ingredients; spoon into crust-lined pie plate.",
        "url": "https://example.com/recipe#step3",
        "image": "https://example.com/photos/recipe/step3.jpg"
      }, {
        "@type": "HowToStep",
        "name": "Cover",
        "text": "Top with second crust. Cut slits or shapes in several places in top crust.",
        "url": "https://example.com/recipe#step4",
        "image": "https://example.com/photos/recipe/step4.jpg"
      }, {
        "@type": "HowToStep",
        "name": "Bake",
        "text": "Bake 40 to 45 minutes. The pie is ready when the apples are tender and the crust is golden brown.",
        "url": "https://example.com/recipe#step5",
        "image": "https://example.com/photos/recipe/step5.jpg"
      }, {
        "@type": "HowToStep",
        "name": "Cool",
        "text": "Cool on cooling rack at least 2 hours before serving.",
        "url": "https://example.com/recipe#step6",
        "image": "https://example.com/photos/recipe/step6.jpg"
      }
    ]
    
  • HowToSection (solo si una receta tiene varias secciones): se usa para agrupar pasos en varias secciones. Consulta HowToSection para ver un ejemplo.
  • Propiedad de texto única o repetida: un bloque de texto que incluye uno o varios pasos. En Google, tratamos todos los pasos como si estuvieran en una sola sección. Los valores de propiedad repetidos se concatenan en un solo bloque de texto. Luego, intentamos dividir automáticamente el bloque de texto en pasos concretos. También intentamos encontrar y eliminar cualquier nombre de sección, número de paso, palabra clave u otro elemento que pueda aparecer incorrectamente en el texto del paso de la receta. Para obtener los mejores resultados, se recomienda especificar inequívocamente los pasos con HowToStep.
    
    "recipeInstructions": [
      "In large bowl, gently mix filling ingredients; spoon into crust-lined pie
    plate. Top with second crust. Cut slits or shapes in several places in top
    crust. Bake 40 to 45 minutes. The pie is ready when the or until apples are
    tender and the crust is golden brown. Cool on cooling rack at least 2 hours
    before serving."
    ]
    

Directrices adicionales

  • No incluyas metadatos que pertenezcan a otra parte. En concreto, usa la propiedad author para especificar el autor, recipeCuisine para incluir el tipo de gastronomía, recipeCategory para señalar la categoría y keywords para indicar otras palabras clave.
  • Incluye solo texto sobre cómo hacer el plato y no otro tipo de texto como "Indicaciones", "Echa un vistazo al vídeo" o "Paso 1". Especifica esas frases fuera de los datos estructurados.

    No recomendado:

    
    "recipeInstructions": [{
      "@type": "HowToStep",
      "text": "Step 1. Heat oven to 425°F."
    }]
    

    Recomendado:

    
    "recipeInstructions": [{
      "@type": "HowToStep",
      "text": "Heat oven to 425°F."
    }]
    
recipeYield

Text o Integer

Indica la cantidad que se obtiene con la receta. Especifica la cantidad de porciones de esta receta, expresada con un número. Si quieres utilizar otra unidad distinta (por ejemplo, el número de elementos), puedes incluir resultados adicionales. Es obligatorio incluir esta propiedad si especificas la información nutricional por porción (como nutrition.calories).

Ejemplo


"recipeYield": [
  "6",
  "24 cookies"
]
totalTime

Duration

Indica, en formato ISO 8601, el tiempo total de preparación del plato.

Usa totalTime o una combinación de cookTime y prepTime.

video VideoObject

Indica un vídeo en el que se muestran los pasos para preparar el plato. Sigue la lista de propiedades de vídeo obligatorias y recomendadas.

  • Video without clips
    
    {
      "@context": "https://schema.org/",
      "@type": "Recipe",
      "video": [
        {
          "@type": "VideoObject",
          "name": "Delicious PieParty Coffee Cake",
          "description": "How to make a delicious pie - quickly and easily!How to make Party Coffee Cake.",
          "thumbnailUrl": [
            "https://example.com/photos/1x1/photo.jpg",
            "https://example.com/photos/4x3/photo.jpg",
            "https://example.com/photos/16x9/photo.jpg"
          ],
          "contentUrl": "https://www.example.com/videos/123_600x400.mp4",
          "embedUrl": "https://www.example.com/videoplayer?id=123",
          "uploadDate": "2018-02-05T08:00:00+08:00"
        }
      ]
    }
    ]
    
  • Video with clips: un vídeo con fragmentos que se corresponden con segmentos del vídeo. En otras partes de la receta, como en los pasos, se puede hacer referencia a estos fragmentos, que se definen en video.hasPart.
    
    {
      "@context": "https://schema.org/",
      "@type": "Recipe",
      "video": {
        "@type": "VideoObject",
        "name": "Make a pie",
        "description": "How to make a delicious pie - quickly and easily!",
        "thumbnailUrl": "https://example.com/photos/photo.jpg",
        "contentUrl": "https://www.example.com/videos/123_600x400.mp4",
        "embedUrl": "https://www.example.com/videoplayer?id=123",
        "uploadDate": "2018-02-05T08:00:00+08:00",
        "duration": "P1MT10S",
        "hasPart": [{
          "@type": "Clip",
          "@id": "Clip1",
          "name": "Preheat oven",
          "startOffset": 20,
          "endOffset": 29
          "url": "https://www.example.com/example?t=20"
         },
         {
           "@type": "Clip",
           "@id": "Clip2",
           "name": "Arrange pie crust",
           "startOffset": 29,
           "endOffset": 36
           "url": "https://www.example.com/example?t=29"
         },
         {
           "@type": "Clip",
           "@id": "Clip3",
           "name": "Make filling",
           "startOffset": 36,
           "endOffset": 45
           "url": "https://www.example.com/example?t=36"
         },
         {
           "@type": "Clip",
           "@id": "Clip4",
           "name": "Add filling",
           "startOffset": 45,
           "endOffset": 65
           "url": "https://www.example.com/example?t=45"
         },
         {
           "@type": "Clip",
           "@id": "Clip5",
           "name": "Bake",
           "startOffset": 65,
           "endOffset": 80
           "url": "https://www.example.com/example?t=65"
         },
         {
           "@type": "Clip",
           "@id": "Clip6",
           "name": "Let cool",
           "startOffset": 80,
           "endOffset": 90
           "url": "https://www.example.com/example?t=80"
        }]
      }
    }
    
video.contentUrl

URL

Una URL que lleva al archivo multimedia de vídeo, que debe estar en uno de los formatos de codificación admitidos. No debe ser el enlace a la página en la que se encuentra el vídeo, sino la URL del propio archivo multimedia de vídeo.


"contentUrl": "https://www.example.com/video/123/file.mp4"

Sigue nuestras prácticas recomendadas sobre los vídeos.

video.hasPart

Clip

Indica un fragmento que forma parte del vídeo.

video.hasPart.endOffset

Number

Indica la hora de finalización del fragmento, expresada como los segundos desde que comienza el vídeo.

video.hasPart.name

Text

Indica el nombre del fragmento. Por ejemplo, "Coloca la masa de la tarta" podría ser el nombre de un fragmento que muestre cómo distribuir y colocar la masa en el molde.

video.hasPart.startOffset

Number

Indica la hora de inicio del fragmento, expresada como los segundos transcurridos desde el inicio del vídeo.

video.hasPart.url

URL

Indica un enlace al inicio del fragmento, que debe coincidir con el valor definido en video.hasPart.startOffset. Por ejemplo:


"startOffset": 20,
"endOffset": 29,
"url": "https://www.example.com/example?t=20"

HowToSection

Utiliza HowToSection para agrupar una secuencia de pasos (o subsecciones) que forman parte de las instrucciones de una receta. Especifica HowToSection directamente en la definición de la propiedad recipeInstructions o como itemListElement de otra propiedad HowToSection.

Con el tipo HowToSection se define una sección de una receta que contiene uno o varios pasos. No utilices HowToSection para definir diferentes recetas del mismo plato, ya que lo recomendable es usar HowToSection como parte de una única receta. Para detallar varias recetas con las que hacer un plato, utiliza varios objetos Recipe. Por ejemplo, si se describen varias formas de hacer una tarta de manzana, deben aparecer como varios objetos Recipe, no como objetos HowToSection.

Puedes consultar la definición completa de HowToSection en schema.org/HowToSection.

Propiedades obligatorias
itemListElement HowToStep

Indica una lista con pasos detallados de una sección o de una subsección. Por ejemplo, una receta de pizza puede tener una sección de pasos para hacer la masa, otra para preparar los ingredientes y una tercera para mezclar y hornear. Si una receta tiene secciones, pero no las defines con HowToSections, es posible que el Asistente muestre por error el nombre de la sección como un paso más; por ejemplo, que aparezca un paso "Hacer la masa" seguido de otro "Mezclar la harina y la levadura".

Ejemplo:


{
  "@type": "HowToSection",
  "name": "Assemble the pie",
  "itemListElement": [
    {
      "@type": "HowToStep",
      "text": "In large bowl, gently mix filling ingredients; spoon into crust-lined pie plate."
    }, {
      "@type": "HowToStep",
      "text": "Top with second crust. Cut slits or shapes in several places in top crust."
    }
  ]
}
name Text

Indica el nombre de una sección.

HowToStep

Utiliza HowToStep para agrupar una o varias frases que explican cómo hacer parte de la receta. Define la propiedad text con todas las frases, aunque también puedes definir itemListElement con una propiedad HowToDirection o HowToTip para cada frase.

Etiqueta los pasos de tu receta con las siguientes propiedades del tipo HowToStep. Especifica HowToStep directamente en la definición de la propiedad recipeInstructions, o como itemListElement de una propiedad HowToSection.

Puedes consultar la definición completa de HowToStep en schema.org/HowToStep.

Propiedades obligatorias
itemListElement HowToDirection o HowToTip

Indica la lista de instrucciones detalladas de los pasos, incluidas indicaciones o consejos.

Si se utiliza text, es opcional.

text Text

Indica el texto completo de las instrucciones de este paso.

Si se utiliza itemListElement, es opcional. Directrices adicionales:

  • Incluye solo texto que contenga instrucciones y no otro tipo de texto como "Indicaciones", "Echa un vistazo al vídeo" o "Paso 1". Especifica esas frases fuera de la propiedad etiquetada.

    No recomendado:

    
    {
      "@type": "HowToStep",
      "text": "Step 1. Heat oven to 425°F."
    }
    

    Recomendado:

    
    {
      "@type": "HowToStep",
      "text": "Heat oven to 425°F."
    }
    
Propiedades recomendadas
image ImageObject o URL

Indica una imagen del paso. Directrices adicionales sobre imágenes:

  • Las URLs de imágenes deben poder rastrearse e indexarse.
  • Las imágenes deben ser representativas del contenido etiquetado.
  • Las imágenes deben estar en formato .jpg, .png o .gif.
name Text

Es la palabra o frase breve que resume el paso (por ejemplo, "Coloca la masa de la tarta"). No uses texto que no sea descriptivo (por ejemplo, "Paso 1: [texto]") ni otra forma de numerar el paso (por ejemplo, "1. [texto]").

url URL

Indica un elemento URL que enlace directamente con un paso (si lo hay). Por ejemplo, un fragmento de enlace ancla.

video VideoObject o Clip

Es un fragmento de vídeo o un vídeo entero de este paso.

En el caso de VideoObject, sigue la lista de propiedades video o clip obligatorias y recomendadas.

HowToDirection y HowToTip

Utiliza HowToDirection y HowToTip para describir indicaciones o consejos. Tienen las mismas propiedades obligatorias y recomendadas.

Puedes consultar las definiciones completas de HowToDirection y HowToTip en schema.org/HowToDirection y en schema.org/HowToTip, respectivamente.

Propiedades obligatorias
text Text

Indica el texto de una indicación o de un consejo.

ItemList

Además de las propiedades de Recipe, añade las siguientes propiedades a las listas de páginas específicas. Si bien incluir ItemList no es obligatorio, debes añadir las siguientes propiedades si quieres que tu receta sea apta para el carrusel de una página concreta. Consulta más información sobre los carruseles de alojamiento en la página Carrusel.

Puedes consultar la definición completa de ItemList en schema.org/ItemList.

Propiedades obligatorias
itemListElement

ListItem

Es la anotación de la página de un solo elemento.

ListItem.position

Integer

Indica la posición ordinal de la página del elemento en la lista. Por ejemplo:


"itemListElement": [
  {
    "@type": "ListItem",
    "position": 1,
  }, {
    "@type": "ListItem",
    "position": 2,
  }
]
ListItem.url

URL

Es la URL canónica de la página del elemento. Cada elemento debe tener una URL única.

Monitorizar resultados enriquecidos con Search Console

Search Console es una herramienta que te ayuda a monitorizar el rendimiento de tus páginas en la Búsqueda de Google. No hace falta que te registres en Search Console para que tu sitio web aparezca en los resultados de la Búsqueda de Google, pero, si lo haces, sabrás cómo lo ve Google y qué puedes hacer para mejorarlo. Te recomendamos que consultes Search Console en los siguientes casos:

  1. Después de implementar datos estructurados por primera vez
  2. Después de publicar plantillas nuevas o modificar el código
  3. Al hacer el análisis periódico del tráfico

Después de implementar datos estructurados por primera vez

Una vez que Google haya indexado tus páginas, puedes comprobar si hay algún problema en el informe de estado de resultados enriquecidos correspondiente. Lo ideal es que haya un aumento en el número de elementos válidos y que no lo haya en el número de elementos no válidos. Si detectas problemas en tus datos estructurados, haz lo siguiente:

  1. Corrige los elementos no válidos.
  2. Inspecciona la URL en tiempo real para ver si el problema continúa.
  3. Solicita que se valide la corrección desde el informe de estado.

Después de publicar plantillas nuevas o modificar el código

Cuando hagas cambios significativos en tu sitio web, observa si se incrementa la cantidad de elementos no válidos de datos estructurados.
  • Si notas que hay más elementos no válidos, quizá sea porque has implementado una plantilla que no funciona, o puede que tu sitio esté interactuando con la plantilla que utilizas de un modo diferente que no es adecuado.
  • Si notas que hay menos elementos válidos, pero no hay un incremento de elementos no válidos, es posible que hayas dejado de insertar datos estructurados en tus páginas. Para saber cuál es la causa del problema, utiliza la herramienta de inspección de URLs.

Al hacer el análisis periódico del tráfico

Consulta el informe de rendimiento para analizar el tráfico de tus páginas en la Búsqueda de Google. En él, verás con qué frecuencia aparece tu página como resultado enriquecido en la Búsqueda, cada cuánto hacen clic en ella los usuarios y cuál es la posición media que ocupa tu sitio web en los resultados de búsqueda. También puedes obtener automáticamente estos resultados con la API de Search Console.

Solucionar problemas

Si tienes problemas para implementar o depurar datos estructurados, a continuación se incluyen algunos recursos que pueden serte útiles.