Pubblicare video su Google con il markup schema

Per gli utenti, la Ricerca Google è un punto di accesso per scoprire e guardare video. Sebbene Google cerchi di comprendere automaticamente i dettagli del tuo video, puoi fornire esplicitamente informazioni quali la descrizione, l'URL della miniatura, la data di caricamento e la durata, eseguendo il markup del video con VideoObject. I video possono apparire nei risultati della Ricerca Google, nei risultati di ricerca video, in Google Immagini e in Google Discover.

Uno screenshot che mostra i contenuti video nei risultati della Ricerca Google, nella scheda Video e in Discover

In base alla modalità di markup dei tuoi contenuti, i video potrebbero essere idonei anche per i seguenti miglioramenti:

Miglioramenti relativi ai video

Badge DAL VIVO: per aggiungere un badge DAL VIVO al tuo video, contrassegnalo con BroadcastEvent. Il badge DAL VIVO può essere applicato a qualunque video pubblico che viene trasmesso in live streaming per qualsiasi durata. Ecco alcuni esempi:

  • Eventi sportivi
  • Premiazioni
  • Video di influencer
  • Videogiochi in live streaming

Assicurati di seguire le linee guida relative ai badge DAL VIVO e di utilizzare l'API Indexing per consentire a Google di eseguire la scansione della tua pagina al momento giusto.

Video con un badge DAL VIVO nei risultati di ricerca

Attività da fare a casa: aiuta le persone a trovare attività da fare a casa. Quando le persone cercano attività da fare a casa, i video e gli eventi online vengono visualizzati in un risultato multimediale immersivo. Se aggiungi dati strutturati Video, i tuoi video potrebbero essere già idonei per questo risultato multimediale, senza dover svolgere passaggi aggiuntivi.

Consulta la pagina Attività da fare a casa per scoprire di più sulla disponibilità della funzionalità e per consultare linee guida ed esempi.

Attività da fare a casa nei risultati di ricerca

Momenti chiave

La funzionalità dei momenti chiave consente agli utenti di esplorare segmenti di video come fossero i capitoli in un libro, aiutandoli a interagire meglio con i tuoi contenuti. La Ricerca Google tenta di rilevare in automatico i segmenti del video e mostra agli utenti i momenti chiave, senza alcun intervento da parte tua. In alternativa, puoi indicare manualmente a Google i punti importanti del video.

  • Se il video è ospitato sulla tua pagina web, puoi scegliere di attivare i momenti chiave in due modi:
    • Dati strutturati Clip: per ogni segmento, specifica il punto di inizio e quello di fine esatti e l'etichetta da mostrare.
    • Dati strutturati SeekToAction: indica a Google il punto in cui normalmente si trovano i timestamp nella struttura dell'URL, in modo che Google possa identificare automaticamente i momenti chiave e rimandare gli utenti a quei punti all'interno del video.
  • Se il video è ospitato su YouTube, puoi specificare le etichette e i timestamp esatti nella descrizione del video su YouTube. Consulta le best practice per la marcatura di timestamp nelle descrizioni di YouTube.

Per disattivare del tutto la funzionalità dei momenti chiave (inclusi i tentativi di Google per mostrare automaticamente i momenti chiave per il tuo video), utilizza il meta tag nosnippet.

Video con momenti chiave nei risultati di ricerca
Carosello host dei video (accesso limitato): consenti agli utenti di esplorare le pagine della galleria video aggiungendo dati strutturati ItemList.

Come aggiungere dati strutturati

I dati strutturati sono un formato standardizzato per fornire informazioni su una pagina e classificarne i contenuti. Se non li hai mai utilizzati, scopri di più su come funzionano i dati strutturati.

Ecco una panoramica su come creare, testare e rilasciare i dati strutturati. Per una guida passo per passo su come aggiungere dati strutturati a una pagina web, consulta il codelab sui dati strutturati.

  1. Aggiungi le proprietà obbligatorie. In base al formato che utilizzi, scopri dove inserire i dati strutturati nella pagina.
  2. Segui le linee guida.
  3. Convalida il codice utilizzando il Test dei risultati multimediali.
  4. Implementa alcune pagine che includono dati strutturati e utilizza lo strumento Controllo URL per verificare come Google vede la pagina. Assicurati che la pagina sia accessibile per Google e che non venga bloccata da file robots.txt, tag noindex o requisiti di accesso. Se la pagina non presenta problemi, puoi chiedere a Google di ripetere la scansione degli URL.
  5. Per tenere Google informata delle future modifiche, ti consigliamo di inviare una Sitemap. Puoi automatizzare questa operazione con l'API Search Console Sitemap.

Esempi

Risultato multimediale video standard

Esempio di risultati di ricerca video standard

Ecco un esempio di un singolo VideoObject.

JSON-LD

<html>
  <head>
    <title>Introducing the self-driving bicycle in the Netherlands</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "VideoObject",
      "name": "Introducing the self-driving bicycle in the Netherlands",
      "description": "This spring, Google is introducing the self-driving bicycle in Amsterdam, the world's premier cycling city. The Dutch cycle more than any other nation in the world, almost 900 kilometres per year per person, amounting to over 15 billion kilometres annually. The self-driving bicycle enables safe navigation through the city for Amsterdam residents, and furthers Google's ambition to improve urban mobility with technology. Google Netherlands takes enormous pride in the fact that a Dutch team worked on this innovation that will have great impact in their home country.",
      "thumbnailUrl": [
        "https://example.com/photos/1x1/photo.jpg",
        "https://example.com/photos/4x3/photo.jpg",
        "https://example.com/photos/16x9/photo.jpg"
       ],
      "uploadDate": "2016-03-31T08:00:00+08:00",
      "duration": "PT1M54S",
      "contentUrl": "https://www.example.com/video/123/file.mp4",
      "embedUrl": "https://www.example.com/embed/123",
      "interactionStatistic": {
        "@type": "InteractionCounter",
        "interactionType": { "@type": "WatchAction" },
        "userInteractionCount": 5647018
      },
      "regionsAllowed": "US,NL"
    }
    </script>
  </head>
  <body>
  </body>
</html>
Microdati

<html itemscope itemprop="VideoObject" itemtype="https://schema.org/VideoObject">
<head>
  <title itemprop="name">Introducing the self-driving bicycle in the Netherlands</title>
</head>
<body>
  <meta itemprop="uploadDate" content="2016-03-31T08:00:00+08:00" />
  <meta itemprop="duration" content="PT1M54S" />
  <p itemprop="description">This spring, Google is introducing the self-driving bicycle in Amsterdam, the world's premier cycling city. The Dutch cycle more than any other nation in the world, almost 900 kilometres per year per person, amounting to over 15 billion kilometres annually. The self-driving bicycle enables safe navigation through the city for Amsterdam residents, and furthers Google's ambition to improve urban mobility with technology. Google Netherlands takes enormous pride in the fact that a Dutch team worked on this innovation that will have great impact in their home country.</p>
  <div itemprop="interactionStatistic" itemtype="https://schema.org/InteractionCounter" itemscope>
    <meta itemprop="userInteractionCount" content="5647018" />
    <meta itemprop="interactionType" itemtype="https://schema.org/WatchAction" />
  </div>
  <link itemprop="embedUrl" href="https://www.example.com/embed/123" />
  <meta itemprop="contentUrl" content="https://www.example.com/video/123/file.mp4" />
  <meta itemprop="regionsAllowed" content="US,NL" />
  <meta itemprop="thumbnailUrl" content="https://example.com/photos/1x1/photo.jpg" />
</body>
</html>

Badge DAL VIVO

Esempio di un video con il badge DAL VIVO nei risultati di ricerca

Ecco un esempio di VideoObject e BroadcastEvent.

JSON-LD

<html>
  <head>
    <title>Bald Eagle at the Park - Livestream</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "VideoObject",
      "contentURL": "https://example.com/bald-eagle-at-the-park.mp4",
      "description": "Bald eagle at the park livestream.",
      "duration": "PT37M14S",
      "embedUrl": "https://example.com/bald-eagle-at-the-park",
      "expires": "2018-10-30T14:37:14+00:00",
      "regionsAllowed": "US",
      "interactionStatistic": {
        "@type": "InteractionCounter",
        "interactionType": { "@type": "WatchAction" },
        "userInteractionCount": 4756
      },
      "name": "Bald eagle nest livestream!",
      "thumbnailUrl": "https://example.com/bald-eagle-at-the-park",
      "uploadDate": "2018-10-27T14:00:00+00:00",
      "publication": [
        {
          "@type": "BroadcastEvent",
          "isLiveBroadcast": true,
          "startDate": "2018-10-27T14:00:00+00:00",
          "endDate": "2018-10-27T14:37:14+00:00"
        },
        {
          "@type": "BroadcastEvent",
          "isLiveBroadcast": true,
          "startDate": "2018-10-27T18:00:00+00:00",
          "endDate": "2018-10-27T18:37:14+00:00"
        }
      ]
    }
    </script>
  </head>
  <body>
  </body>
</html>
Microdati

<html itemscope itemprop="VideoObject" itemtype="https://schema.org/VideoObject">
<head>
  <title itemprop="name">Bald Eagle at the Park - Livestream</title>
</head>
<body>
  <meta itemprop="uploadDate" content="2018-10-27T14:00:00+00:00" />
  <meta itemprop="duration" content="PT37M14S" />
  <p itemprop="description">Bald eagle at the park livestream.</p>
  <div itemprop="interactionStatistic" itemtype="https://schema.org/InteractionCounter" itemscope>
    <meta itemprop="userInteractionCount" content="4756" />
    <meta itemprop="interactionType" itemtype="https://schema.org/WatchAction" />
  </div>
  <link itemprop="embedUrl" href="https://example.com/bald-eagle-at-the-park" />
  <meta itemprop="expires" content="2018-10-30T14:37:14+00:00" />
  <meta itemprop="contentUrl" content="https://example.com/bald-eagle-at-the-park.mp4" />
  <meta itemprop="regionsAllowed" content="US" />
  <meta itemprop="thumbnailUrl" content="https://example.com/bald-eagle-at-the-park" />
  <div itemprop="publication" itemtype="https://schema.org/BroadcastEvent" itemscope>
    <meta itemprop="isLiveBroadcast" content="true" />
    <meta itemprop="startDate" content="2018-10-27T14:00:00+00:00" />
    <meta itemprop="endDate" content="2018-10-27T14:37:14+00:00" />
  </div>
  <div itemprop="publication" itemtype="https://schema.org/BroadcastEvent" itemscope>
    <meta itemprop="isLiveBroadcast" content="true" />
    <meta itemprop="startDate" content="2018-10-27T18:00:00+00:00" />
    <meta itemprop="endDate" content="2018-10-27T18:37:14+00:00" />
  </div>
</body>
</html>

Ecco un esempio di dati strutturati VideoObject e ItemList. Questa funzionalità è attualmente limitata a un piccolo gruppo di fornitori.

JSON-LD

<html>
  <head>
    <title>Introducing the self-driving bicycle in the Netherlands</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "ItemList",
      "itemListElement": [
        {
          "@type": "VideoObject",
          "position": 1,
          "name": "Introducing the self-driving bicycle in the Netherlands",
          "url": "https://www.example.com/video/self-driving-bicycle",
          "description": "This spring, Google is introducing the self-driving bicycle in Amsterdam, the world's premier cycling city. The Dutch cycle more than any other nation in the world, almost 900 kilometres per year per person, amounting to over 15 billion kilometres annually. The self-driving bicycle enables safe navigation through the city for Amsterdam residents, and furthers Google's ambition to improve urban mobility with technology. Google Netherlands takes enormous pride in the fact that a Dutch team worked on this innovation that will have great impact in their home country.",
          "thumbnailUrl": [
            "https://www.example.com/video/self-driving-bicycle/1x1/photo.jpg",
            "https://www.example.com/video/self-driving-bicycle/4x3/photo.jpg",
            "https://www.example.com/video/self-driving-bicycle/16x9/photo.jpg"
          ],
          "uploadDate": "2016-03-31T08:00:00+08:00",
          "duration": "PT1M54S",
          "contentUrl": "https://www.example.com/video/self-driving-bicycle/file.mp4",
          "embedUrl": "https://www.example.com/embed/self-driving-bicycle",
          "interactionStatistic": {
            "@type": "InteractionCounter",
            "interactionType": { "@type": "WatchAction" },
            "userInteractionCount": 5647018
          }
        },
        {
          "@type": "VideoObject",
          "position": 2,
          "name": "How to tie a tie",
          "url": "https://www.example.com/video/how-to-tie-a-tie",
          "description": "How to tie a four-in-hand knot.",
          "thumbnailUrl": [
            "https://www.example.com/video/how-to-tie-a-tie/1x1/photo.jpg",
            "https://www.example.com/video/how-to-tie-a-tie/4x3/photo.jpg",
            "https://www.example.com/video/how-to-tie-a-tie/16x9/photo.jpg"
          ],
          "uploadDate": "2019-02-28T08:00:00+08:00",
          "duration": "PT5M01S",
          "contentUrl": "https://www.example.com/video/how-to-tie-a-tie/file.mp4",
          "embedUrl": "https://www.example.com/embed/how-to-tie-a-tie",
          "interactionStatistic": {
            "@type": "InteractionCounter",
            "interactionType": { "@type": "WatchAction" },
            "userInteractionCount": 102111
          }
        }
      ]
    }
    </script>
  </head>
  <body>
  </body>
</html>
Microdati

<div>
      <div itemprop="video" itemscope itemtype="https://schema.org/VideoObject">
        <!-- Thumbnail -->
        <a href="https://example.com/videos/self-driving-bicycle"
           title="Introducing the self-driving bicycle in the Netherlands">
          <img src="https://example.com/videos/self-driving-bicycle/thumbnail.jpg"
               alt="Introducing the self-driving bicycle in the Netherlands"
               title="Introducing the self-driving bicycle in the Netherlands"
               itemprop="thumbnailUrl">
        </a>
        <!-- URL, name, and description -->
        <h1>
          <a itemprop="contentUrl" href="https://example.com/videos/self-driving-bicycle"
             title="Introducing the self-driving bicycle in the Netherlands">
            <span itemprop="name">Introducing the self-driving bicycle in the Netherlands</span>
          </a>
        </h1>
        <a href="https://example.com/videos/self-driving-bicycle"
             title="Introducing the self-driving bicycle in the Netherlands">
          <div itemprop="description">"This spring, Google is introducing the self-driving bicycle
            in Amsterdam, the world's premier cycling city. The Dutch cycle more than any other
            nation in the world, almost 900 kilometres per year per person, amounting to over 15
            billion kilometres annually. The self-driving bicycle enables safe navigation through
            the city for Amsterdam residents, and furthers Google's ambition to improve urban
            mobility with technology. Google Netherlands takes enormous pride in the fact that a
            Dutch team worked on this innovation that will have great impact in their home country.
          "</div>
        </a>
        <!-- Other metadata -->
        <meta itemprop="duration" content="PT1M54S" />
        <meta itemprop="uploadDate" content="2016-03-31T08:00:00+08:00" />
        <span itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter">
        	<span itemprop="interactionType" itemscope itemtype="https://schema.org/WatchAction"></span>
        	<meta itemprop="userInteractionCount" content="5647018" />
        </span>
      </div>

      <div itemprop="video" itemscope itemtype="https://schema.org/VideoObject">
        <!-- Thumbnail -->
        <a href="https://example.com/videos/how-to-tie-a-tie"
           title="How to tie a tie">
          <img src="https://example.com/videos/how-to-tie-a-tie/thumbnail.jpg"
               alt="How to tie a tie"
               title="How to tie a tie"
               itemprop="thumbnailUrl">
        </a>
        <!-- URL, name, and description -->
        <h1>
          <a itemprop="contentUrl" href="https://example.com/videos/how-to-tie-a-tie"
             title="Tie a Tie">
            <span itemprop="name">Tie a Tie</span>
          </a>
        </h1>
        <a href="https://example.com/videos/how-to-tie-a-tie"
             title="Tie a Tie">
          <div itemprop="description">How to tie a four-in-hand knot.</div>
        </a>
        <!-- Other metadata -->
        <meta itemprop="duration" content="PT5M01S" />
        <meta itemprop="uploadDate" content="2019-01-05T08:00:00+08:00" />
        <span itemprop="interactionStatistic" itemscope itemtype="https://schema.org/InteractionCounter">
        	<span itemprop="interactionType" itemscope itemtype="https://schema.org/WatchAction"></span>
        	<meta itemprop="userInteractionCount" content="102111" />
        </span>
      </div>
    </div>
  

Clip

Esempio di un video nei risultati di ricerca con i momenti chiave

Ecco un esempio di VideoObject e Clip.

JSON-LD

<html>
  <head>
    <title>Cat jumps over the fence</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "VideoObject",
      "name": "Cat video",
      "duration": "P10M",
      "uploadDate": "2019-07-19",
      "thumbnailUrl": "http://www.example.com/cat.jpg",
      "description": "Watch this cat jump over a fence!",
      "contentUrl": "http://www.example.com/cat_video_full.mp4",
      "regionsAllowed": "US",
      "hasPart": [{
        "@type": "Clip",
        "name": "Cat jumps",
        "startOffset": 30,
        "endOffset": 45,
        "url": "http://www.example.com/example?t=30"
      },
      {
        "@type": "Clip",
        "name": "Cat misses the fence",
        "startOffset": 111,
        "endOffset": 150,
        "url": "http://www.example.com/example?t=111"
      }]
    }
    </script>
  </head>
  <body>
  </body>
</html>
Microdati

<html itemscope itemprop="VideoObject" itemtype="https://schema.org/VideoObject">
<head>
  <title itemprop="name">Cat jumps over the fence</title>
</head>
<body>
  <meta itemprop="uploadDate" content="2019-07-19" />
  <meta itemprop="duration" content="P10M" />
  <p itemprop="description">Watch this cat jump over a fence!</p>
  <div itemprop="interactionStatistic" itemtype="https://schema.org/InteractionCounter" itemscope>
    <meta itemprop="userInteractionCount" content="5647018" />
    <meta itemprop="interactionType" itemtype="https://schema.org/WatchAction" />
  </div>
  <div itemprop="hasPart" itemtype="https://schema.org/Clip" itemscope>
    <meta itemprop="name" content="Cat jumps" />
    <meta itemprop="startOffset" content="30" />
    <meta itemprop="endOffset" content="45" />
    <meta itemprop="url" content="http://www.example.com/example?t=30" />
  </div>
  <div itemprop="hasPart" itemtype="https://schema.org/Clip" itemscope>
    <meta itemprop="name" content="Cat misses the fence" />
    <meta itemprop="startOffset" content="111" />
    <meta itemprop="endOffset" content="150" />
    <meta itemprop="url" content="http://www.example.com/example?t=111" />
  </div>
  <link itemprop="embedUrl" href="https://www.example.com/embed/123" />
  <meta itemprop="contentUrl" content="http://www.example.com/cat_video_full.mp4" />
  <meta itemprop="regionsAllowed" content="US" />
  <meta itemprop="thumbnailUrl" content="http://www.example.com/cat.jpg" />
</body>
</html>

SeekToAction

Ecco un esempio di un singolo VideoObject che include le proprietà aggiuntive necessarie per il markup SeekToAction.

JSON-LD

<html>
  <head>
    <title>John Smith (@johnsmith123) on VideoApp: My daily workout! #stayingfit</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "VideoObject",
      "potentialAction" : {
        "@type": "SeekToAction",
        "target": "https://video.example.com/watch/videoID?t={seek_to_second_number}",
        "startOffset-input": "required name=seek_to_second_number"
      },
      "name": "My daily workout!",
      "uploadDate": "2020-07-19",
      "thumbnailUrl": "http://www.example.com/daily-workout.jpg",
      "description": "My daily workout!",
      "embedUrl": "https://example.com/daily-workout"
    }
    </script>
  </head>
  <body>
  </body>
</html>
Microdati

<html itemscope itemprop="VideoObject" itemtype="https://schema.org/VideoObject">
<head>
  <title itemprop="name">John Smith (@johnsmith123) on VideoApp: My daily workout! #stayingfit</title>
</head>
<body>
  <meta itemprop="uploadDate" content="2020-07-19" />
  <p itemprop="description">My daily workout!</p>
  <div itemprop="potentialAction" itemtype="https://schema.org/SeekToAction" itemscope>
    <meta itemprop="target" content="https://video.example.com/watch/videoID?t={seek_to_second_number}" />
    <meta itemprop="startOffset-input" content="required name=seek_to_second_number" />
  </div>
  <link itemprop="embedUrl" href="https://example.com/daily-workout" />
  <meta itemprop="thumbnailUrl" content="http://www.example.com/daily-workout.jpg" />
</body>
</html>

Pagina AMP con un video

Ecco un esempio di VideoObject in una pagina AMP.

JSON-LD

<html amp>
  <head>
    <title>Introducing the self-driving bicycle in the Netherlands</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "VideoObject",
      "name": "Introducing the self-driving bicycle in the Netherlands",
      "description": "This spring, Google is introducing the self-driving bicycle in Amsterdam, the world's premier cycling city. The Dutch cycle more than any other nation in the world, almost 900 kilometres per year per person, amounting to over 15 billion kilometres annually. The self-driving bicycle enables safe navigation through the city for Amsterdam residents, and furthers Google's ambition to improve urban mobility with technology. Google Netherlands takes enormous pride in the fact that a Dutch team worked on this innovation that will have great impact in their home country.",
      "thumbnailUrl": "https://www.example.com/thumbnail.jpg",
      "uploadDate": "2016-03-31T08:00:00+08:00",
      "duration": "PT1M54S",
      "publisher": {
        "@type": "Organization",
        "name": "Google Nederland",
        "logo": {
          "@type": "ImageObject",
          "url": "https://example.com/logo.jpg",
          "width": 600,
          "height": 60
        }
      },
      "contentUrl": "https://www.example.com/video/123/file.mp4",
      "embedUrl": "https://www.example.com/embed/123",
      "interactionStatistic": {
        "@type": "InteractionCounter",
        "interactionType": { "@type": "WatchAction" },
        "userInteractionCount": 5647018
      },
      "regionsAllowed": "NL"
    }
    </script>
  </head>
  <body>
  </body>
</html>
Microdati

<html amp itemscope itemprop="VideoObject" itemtype="https://schema.org/VideoObject">
<head>
  <title itemprop="name">Introducing the self-driving bicycle in the Netherlands</title>
</head>
<body>
  <meta itemprop="uploadDate" content="2016-03-31T08:00:00+08:00" />
  <meta itemprop="duration" content="PT1M54S" />
  <p itemprop="description">This spring, Google is introducing the self-driving bicycle in Amsterdam, the world's premier cycling city. The Dutch cycle more than any other nation in the world, almost 900 kilometres per year per person, amounting to over 15 billion kilometres annually. The self-driving bicycle enables safe navigation through the city for Amsterdam residents, and furthers Google's ambition to improve urban mobility with technology. Google Netherlands takes enormous pride in the fact that a Dutch team worked on this innovation that will have great impact in their home country.</p>
  <div itemprop="interactionStatistic" itemtype="https://schema.org/InteractionCounter" itemscope>
    <meta itemprop="userInteractionCount" content="5647018" />
    <meta itemprop="interactionType" itemtype="https://schema.org/WatchAction" />
  </div>
  <link itemprop="embedUrl" href="https://www.example.com/embed/123" />
  <meta itemprop="contentUrl" content="https://www.example.com/video/123/file.mp4" />
  <meta itemprop="regionsAllowed" content="US,NL" />
  <meta itemprop="thumbnailUrl" content="https://example.com/photos/1x1/photo.jpg" />
</body>
</html>

Linee guida

Per aiutare Google a comprendere meglio il tuo video, assicurati di attenerti alle seguenti linee guida:

Linee guida per i badge DAL VIVO

Se aggiungi BroadcastEvent per mostrare video in live streaming, segui queste linee guida:

  • Non utilizzare un linguaggio volgare o potenzialmente offensivo nei dati strutturati.
  • Per assicurarti che Google esegua la scansione del video in live streaming al momento giusto, utilizza l'API Indexing. Chiama l'API per i seguenti eventi:
    • Quando il video viene pubblicato
    • Quando lo streaming del video si interrompe e il markup della pagina è stato aggiornato per indicare la endDate
    • Ogni volta che si verifica un cambiamento nel markup e Google deve essere informata

Best practice per contrassegnare timestamp su YouTube

Se il tuo video è ospitato su YouTube, la Ricerca Google potrebbe attivare automaticamente i momenti chiave per il tuo video in base alla descrizione del video su YouTube e potresti non dover contrassegnare timestamp specifici nella descrizione di YouTube. Tuttavia, puoi indicarci in modo più esplicito i punti importanti del tuo video e daremo preferenza a queste informazioni. Il seguente diagramma mostra in che modo timestamp ed etichette nelle descrizioni dei video di YouTube possono apparire nei risultati di ricerca:

Un video nei risultati di ricerca con timestamp ed etichette
1. Timestamp: quando inizia il clip.
2. Etichetta: il nome del clip.

Tieni presente le seguenti linee guida durante la formattazione di timestamp ed etichette per le descrizioni di YouTube:

  • Formatta il timestamp nel seguente formato: [hour]:[minute]:[second]. Se non c'è l'ora, non è necessario includerla.
  • Specifica l'etichetta del timestamp sulla stessa riga del timestamp.
  • Inserisci ogni timestamp su una nuova riga nella descrizione del video.
  • Collega il timestamp al punto specificato nel video.
  • Assicurati che l'etichetta contenga almeno una parola.
  • Elenca i timestamp in ordine cronologico.

Linee guida per Clip e SeekToAction

Se aggiungi i dati strutturati Clip o SeekToAction per contrassegnare i segmenti video, segui queste linee guida:

  • Deve essere possibile creare nell'URL un link diretto a un punto specifico del video diverso dall'inizio. Ad esempio, http://www.example.com/example?t=30 fa partire il video a 30 secondi dall'inizio.
  • I dati strutturati di VideoObject devono essere aggiunti a una pagina in cui gli utenti possono guardare il video. Per l'utente, essere reindirizzato a una pagina in cui non può guardare il video costituisce un'esperienza negativa.
  • La durata totale del video deve essere di almeno 30 secondi.
  • Il video deve includere le proprietà obbligatorie elencate nella documentazione relativa ai dati strutturati VideoObject.
  • Solo per i dati strutturati Clip: assicurati che in uno stesso video non ci siano due clip definiti in una stessa pagina con lo stesso punto di inizio.
  • Solo per i dati strutturati SeekToAction: Google deve essere in grado di recuperare i file di contenuti video.

Definizioni dei tipi di dati strutturati

In questa sezione vengono descritti i tipi di dati strutturati relativi alle funzionalità video della Ricerca Google. Devi includere le proprietà VideoObject obbligatorie affinché i tuoi contenuti siano idonei per essere visualizzati come risultato multimediale video. Puoi anche includere le proprietà consigliate per aggiungere ulteriori informazioni sui tuoi contenuti, fornendo così un'esperienza utente migliore. Oltre alle proprietà VideoObject, puoi aggiungere i seguenti tipi di dati per abilitare i miglioramenti video nella Ricerca Google:

  • BroadcastEvent: contrassegna i video in live streaming per attivare un badge DAL VIVO sul tuo video.
  • ItemList: contrassegna le pagine con un elenco di video per abilitare un carosello host di video.
  • Clip: contrassegna manualmente i segmenti importanti del video per aiutare gli utenti a passare velocemente a momenti specifici del contenuto.
  • SeekToAction: attiva i momenti chiave indicando come funziona la struttura dell'URL, in modo che Google possa identificare automaticamente i momenti chiave e rimandare gli utenti a quei punti all'interno del video.

VideoObject

La definizione completa di VideoObject è disponibile all'indirizzo schema.org/VideoObject. Se non includi le proprietà obbligatorie, Google potrebbe non essere in grado di estrarre alcuna informazione sul video. Puoi anche includere le proprietà consigliate per aggiungere ulteriori informazioni sui tuoi contenuti, fornendo così un'esperienza utente migliore.

Proprietà obbligatorie
description

Text

La descrizione del video. I tag HTML vengono ignorati.

name

Text

Il titolo del video.

thumbnailUrl

URL ripetuto

Un URL che rimanda al file della miniatura del video. Segui le linee guida per le miniature.

uploadDate

Date

La data in cui il video è stato pubblicato per la prima volta, in formato ISO 8601.

Proprietà consigliate
contentUrl

URL

Un URL che rimanda all'effettivo file multimediale del video, in uno dei formati di codifica supportati. Non inserire link alla pagina in cui si trova il video; deve essere l'URL del file multimediale del video.


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

Assicurati di seguire le nostre best practice per i video.

duration

Duration

La durata del video in formato ISO 8601. Ad esempio, PT00H30M5S rappresenta una durata di "30 minuti e 5 secondi".

embedUrl

URL

Un URL che rimanda a un player per il video specifico. Non inserire link alla pagina in cui si trova il video; deve essere l'URL del video player stesso. Di solito si tratta delle informazioni contenute nell'elemento src di un tag <embed>.


"embedUrl": "https://www.example.com/embed/123"

Assicurati di seguire le nostre best practice per i video.

expires

Date

Se applicabile, la data dopo la quale il video non sarà più disponibile, in formato ISO 8601. Non fornire queste informazioni se il tuo video non ha scadenza.

hasPart

Se il tuo video include segmenti importanti, nidifica le proprietà Clip obbligatorie in VideoObject. Ad esempio:


<script type="application/ld+json">
{
  "@context": "https://schema.org/",
  "@type": "VideoObject",
  "name": "Cat video",
  "hasPart": {
    "@type": "Clip",
    "name": "Cat jumps",
    "startOffset": 30,
    "url": "http://www.example.com/example?t=30"
  }
}
</script>
interactionStatistic

InteractionCounter

Il numero di volte in cui il video è stato guardato. Ad esempio:


"interactionStatistic":
  {
    "@type": "InteractionCounter",
    "interactionType": { "@type": "WatchAction" },
    "userInteractionCount": 12345
  }
publication

Se il tuo video è trasmesso dal vivo e vuoi che sia idoneo per il badge DAL VIVO, nidifica le proprietà BroadcastEvent in VideoObject. Ad esempio:


<script type="application/ld+json">
{
  "@context": "https://schema.org/",
  "@type": "VideoObject",
  "name": "Cat video",
  "publication": {
    "@type": "BroadcastEvent",
    "name": "First scheduled broadcast",
    "isLiveBroadcast": true,
    "startDate": "2018-10-27T14:00:00+00:00",
    "endDate": "2018-10-27T14:37:14+00:00"
  }
}
</script>
regionsAllowed

Place

Le aree geografiche in cui i video sono consentiti. Se non specificato, Google presuppone che il video sia consentito ovunque. Specifica i paesi in formato ISO 3166. Per inserire più valori, utilizza uno spazio o una virgola come delimitatore.

BroadcastEvent

Perché il tuo video possa apparire con un badge DAL VIVO, nidifica le seguenti proprietà in VideoObject. Sebbene le proprietà BroadcastEvent non siano obbligatorie, devi aggiungere le seguenti proprietà se vuoi che il tuo video venga mostrato con un badge DAL VIVO.

La definizione completa di BroadcastEvent è disponibile all'indirizzo schema.org/BroadcastEvent.

Proprietà obbligatorie
publication

BroadcastEvent

Descrive quando il video deve essere trasmesso in live streaming. Può essere un elenco o un'unica istanza.

publication.endDate

DateTime

Ora e data di fine o termine previsto del live streaming, in formato ISO 8601.

Devi fornire la endDate dopo che il video è terminato e non è più dal vivo. Se la endDate prevista è sconosciuta prima dell'avvio del live streaming, ti consigliamo di fornire una endDate approssimativa.

Se la endDate è nel passato o nel presente, vuol dire che lo streaming è effettivamente terminato e non è più dal vivo. Se la endDate è nel futuro, vuol dire che lo streaming è pianificato per terminare in quel momento.

publication.isLiveBroadcast

Booleano

Impostalo su true se il video è, è stato o sarà trasmesso in live streaming.

publication.startDate

DateTime

Data e ora di inizio effettiva o prevista del live streaming, in formato ISO 8601. Se la data startDate è nel passato o nel presente, indica che lo streaming è stato effettivamente avviato. Se la data startDate è nel futuro, indica che lo streaming è pianificato per l'avvio in quel momento.

ItemList (accesso limitato)

Per aiutare Google a comprendere meglio le pagine della tua galleria video, aggiungi le seguenti proprietà ItemList oltre alle proprietà VideoObject. Per scoprire di più sui caroselli, consulta la pagina Caroselli.

La definizione completa di ItemList è disponibile all'indirizzo schema.org/ItemList.

Proprietà obbligatorie
itemListElement

ListItem

Annotazione per una pagina elemento. Ogni elemento ListItem deve includere le proprietà VideoObject e le proprietà ListItem.

ListItem.position

Integer

Posizione ordinale della pagina elemento nell'elenco. Ad esempio:


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

URL

L'URL canonico della pagina di elemento. Ogni elemento deve avere un URL univoco.

Clip

Per indicare manualmente a Google il timestamp e l'etichetta da utilizzare per la funzionalità dei momenti chiave, nidifica le seguenti proprietà in VideoObject. Sebbene le proprietà Clip non siano obbligatorie, devi aggiungere le seguenti proprietà se vuoi che Google mostri i timestamp e le etichette specificati per il video, invece dei segmenti video che Google potrebbe mostrare automaticamente.

La definizione completa di Clip è disponibile all'indirizzo schema.org/Clip.

Proprietà obbligatorie
name

Text

Un titolo descrittivo per il contenuto del clip.

startOffset

Number

Punto di inizio del clip, espresso come numero di secondi dall'inizio.

url

URL

Un URL che indirizza al punto di inizio del clip.

L'URL del clip deve indirizzare allo stesso percorso dell'URL del video con parametri di ricerca aggiuntivi che specificano l'ora.

Ad esempio, il seguente URL indica che il video inizia al minuto 2:00:


"url": "https://www.example.com/example?t=120"
Proprietà consigliate
endOffset

Number

Il punto in cui finisce il clip, espresso come numero di secondi dall'inizio.

SeekToAction

Per comunicare a Google come funziona la struttura dell'URL in modo che possa mostrare i momenti chiave identificati automaticamente per il tuo video, nidifica le seguenti proprietà in VideoObject. Sebbene le proprietà SeekToAction non siano obbligatorie, devi aggiungere le seguenti proprietà se vuoi che Google comprenda come funziona la struttura dell'URL, in modo che possa rimandare gli utenti a un punto del video.

La definizione completa di SeekToAction è disponibile all'indirizzo schema.org/SeekToAction.

Proprietà obbligatorie
potentialAction

SeekToAction

Indica una potenziale azione. Includi le seguenti proprietà nidificate

Ad esempio:


{
  "@context": "https://schema.org",
  "@type": "VideoObject",
  "potentialAction" : {
    "@type": "SeekToAction",
    "target": "https://video.example.com/watch/videoID?t={seek_to_second_number}",
    "startOffset-input": "required name=seek_to_second_number"
  }
)
potentialAction.startOffset-input

Text

La stringa segnaposto che Google identificherà come struttura del timestamp per poi sostituirla con il numero di secondi a cui saltare. Utilizza il valore seguente:


"startOffset-input": "required name=seek_to_second_number"
potentialAction.target

EntryPoint

L'URL della pagina che contiene questo VideoObject, incluso un segnaposto nella struttura dell'URL che indica dove Google può inserire il numero di secondi a cui saltare nel video. Ecco come Google comprende la struttura dell'URL e come formattare i tuoi timestamp. Sostituisci la parte del timestamp dell'URL con la seguente stringa segnaposto:


{seek_to_second_number}

Ad esempio, sostituisci la parte del timestamp dell'URL:


"target": "https://video.example.com/watch/videoID?t=30"
In questo modo il timestamp avrà il seguente aspetto:

"target": "https://video.example.com/watch/videoID?t={seek_to_second_number}"

Monitorare i risultati multimediali con Search Console

Search Console è uno strumento che consente di monitorare il rendimento delle tue pagine in Ricerca Google. Registrarsi in Search Console non è obbligatorio per essere inclusi nei risultati di Ricerca Google, ma può aiutarti a capire e migliorare il modo in cui Google vede il tuo sito. Ti consigliamo di controllare Search Console nei seguenti casi:

  1. Dopo aver effettuato il deployment dei dati strutturati per la prima volta
  2. Dopo aver rilasciato nuovi modelli o aggiornato il codice
  3. Analisi periodica del traffico

Dopo aver effettuato il deployment dei dati strutturati per la prima volta

Dopo che Google ha indicizzato le tue pagine, cerca i problemi utilizzando il rapporto sullo stato dei risultati multimediali pertinente. Idealmente, dovresti notare un aumento delle pagine e nessun aumento di errori o avvisi. Se riscontri problemi nei dati strutturati:

  1. Correggi gli errori.
  2. Controlla un URL pubblicato per verificare se il problema persiste.
  3. Richiedi la convalida utilizzando il rapporto sullo stato.

Dopo aver rilasciato nuovi modelli o aggiornato il codice

Quando apporti modifiche significative al tuo sito web, monitora l'aumento degli errori e degli avvisi relativi ai dati strutturati.
  • Se vedi un aumento di errori, forse hai implementato un nuovo modello non funzionante oppure il tuo sito interagisce con il modello esistente in modo nuovo ma non corretto.
  • Se noti una diminuzione degli elementi validi (non associata a un aumento degli errori), forse non stai più incorporando dati strutturati nelle tue pagine. Utilizza lo strumento Controllo URL per scoprire la causa del problema.

Analisi periodica del traffico

Analizza il traffico di Ricerca Google utilizzando il rapporto sul rendimento. I dati mostrano la frequenza con cui la pagina viene visualizzata nei risultati multimediali nella Ricerca, la frequenza con cui gli utenti fanno clic e qual è la posizione media che visualizzi nei risultati di ricerca. Puoi anche estrarre automaticamente questi risultati con l'API Search Console.

Risoluzione dei problemi

Se hai difficoltà con l'implementazione o il debug dei dati strutturati, ecco alcune risorse che potrebbero esserti utili.