---
title: "Event e Course: dados estruturados para eventos e cursos | Grupo Marfre"
description: "Event e Course no JSON-LD: quando usar cada um, exemplo com evento fictício e o que fazer com data passada. Guia de dados estruturados para eventos e cursos."
canonical: https://grupomarfre.com.br/sites-agenticos/schema-event-e-course/
alternate_html: https://grupomarfre.com.br/sites-agenticos/schema-event-e-course/
language: pt-BR
last_updated: 2026-10-27
type: guia
---
# Event e Course: dados estruturados para eventos e cursos

**Resposta rápida:** Use Event para algo que acontece numa data e num lugar (ou online), com organizador e ingresso. Use Course para o programa de ensino e CourseInstance para cada turma com data. Quando a data passa, mantenha o dado verdadeiro ou remova o bloco. Nunca troque a data só para parecer atual.

Event descreve uma ocorrência única: palestra, workshop, show, feira. Course descreve um programa de ensino que pode ser oferecido várias vezes, e CourseInstance descreve cada oferta (a turma de março, a turma online de agosto). A regra de escolha é simples: se existe uma data de início e um lugar, é Event ou CourseInstance. Se é o conteúdo do curso em si, é Course.

Esses blocos não são exigidos para a Visão Geral por IA nem para o Modo IA. Segundo a documentação do Google sobre recursos de IA (atualizada em 10/12/2025), não há arquivo, markup ou schema especial obrigatório para esses recursos. O valor do markup aqui é outro: entregar data, local, organizador e preço num formato que máquina lê sem adivinhar. Para o básico de formato, veja [JSON-LD: o que é e como a IA usa os dados estruturados](https://grupomarfre.com.br/sites-agenticos/json-ld/).

## Quando usar Event e quando usar Course?

Use Event quando a página trata de algo que acontece uma vez, com data marcada. Use Course quando a página vende ou apresenta um programa de ensino. Use CourseInstance dentro do Course quando cada turma tem data, modalidade ou instrutor próprios.

| Situação | Tipo | Observação |
| --- | --- | --- |
| Palestra de uma noite | Event | Uma página por evento |
| Workshop presencial de um dia | Event | Com local e ingresso |
| Curso de 6 meses com turmas | Course + CourseInstance | Uma página do curso, uma instância por turma |
| Curso gravado, sem data | Course | Sem CourseInstance de data |
| Espaço onde os eventos acontecem | EventVenue (ou Place) | Ligado ao evento pelo campo `location` |

Os tipos Course, CourseInstance e EventVenue existem em schema.org (conferido em 27/10/2026). O vocabulário completo está em [schema.org: o vocabulário dos dados estruturados](https://grupomarfre.com.br/sites-agenticos/schema-org/).

## Como escrever um Event com data, local, organizador e oferta?

Um Event completo responde quatro perguntas: o que é, quando, onde e quem organiza, mais quanto custa. Cada resposta vira um campo: `name` e `description`, `startDate` e `endDate`, `location`, `organizer` e `offers`. A data vai no formato ISO 8601, com fuso.

Exemplo fictício (empresa, endereço e preço inventados):

```json
{
  "@context": "https://schema.org",
  "@type": "Event",
  "@id": "https://www.exemplo.com.br/eventos/workshop-foto-produto/#evento",
  "name": "Workshop de Fotografia de Produto",
  "description": "Oficina prática de um dia sobre iluminação e enquadramento para lojas virtuais.",
  "startDate": "2027-03-20T09:00:00-03:00",
  "endDate": "2027-03-20T17:00:00-03:00",
  "eventStatus": "https://schema.org/EventScheduled",
  "eventAttendanceMode": "https://schema.org/OfflineEventAttendanceMode",
  "location": {
    "@type": "Place",
    "name": "Estúdio Luz Clara",
    "address": {
      "@type": "PostalAddress",
      "streetAddress": "Rua Exemplo, 100",
      "addressLocality": "Belo Horizonte",
      "addressRegion": "MG",
      "addressCountry": "BR"
    }
  },
  "organizer": { "@id": "https://www.exemplo.com.br/#organizacao" },
  "offers": {
    "@type": "Offer",
    "price": "250.00",
    "priceCurrency": "BRL",
    "availability": "https://schema.org/InStock",
    "url": "https://www.exemplo.com.br/eventos/workshop-foto-produto/"
  }
}
```

Três pontos de atenção:

1.  O `organizer` aponta por `@id` para a ficha da empresa, em vez de repetir os dados. A técnica está em [@id: como ligar os blocos de dados estruturados entre si](https://grupomarfre.com.br/sites-agenticos/id-e-ligacao-de-entidades/) e a ficha em [Schema Organization](https://grupomarfre.com.br/sites-agenticos/schema-organization/).
2.  Evento online põe em `location` o endereço de acesso (um `VirtualLocation` com `url`) e usa o modo de participação online. Evento híbrido declara os dois.
3.  Tudo que está no JSON-LD precisa estar visível na página: data, local e preço no texto, não só no código.

## Como descrever um curso com Course e CourseInstance?

O Course carrega o que não muda: nome, descrição, quem oferece (`provider`). Cada turma entra como CourseInstance, dentro de `hasCourseInstance`, com `courseMode` (por exemplo online ou presencial), `startDate`, `endDate` e, se couber, `instructor`. Preço e condições ficam em `offers`, conforme o [Product e Offer](https://grupomarfre.com.br/sites-agenticos/schema-product-e-offer/).

Exemplo fictício:

```json
{
  "@context": "https://schema.org",
  "@type": "Course",
  "name": "Fotografia de Produto para E-commerce",
  "description": "Curso de 4 semanas sobre iluminação, edição e padronização de fotos de catálogo.",
  "provider": { "@id": "https://www.exemplo.com.br/#organizacao" },
  "hasCourseInstance": [
    {
      "@type": "CourseInstance",
      "courseMode": "online",
      "startDate": "2027-04-05",
      "endDate": "2027-04-30"
    },
    {
      "@type": "CourseInstance",
      "courseMode": "onsite",
      "startDate": "2027-08-02",
      "endDate": "2027-08-27",
      "location": {
        "@type": "Place",
        "name": "Estúdio Luz Clara",
        "address": "Rua Exemplo, 100, Belo Horizonte, MG"
      }
    }
  ]
}
```

Para escola e curso livre, o tipo da organização também importa. Veja [Site agêntico para escola, curso e escola de idiomas](https://grupomarfre.com.br/sites-agenticos/site-agentico-para-escola-e-curso/).

## O que fazer com a data que já passou?

Evento encerrado tem duas saídas honestas: manter o bloco com a data real (e o texto da página dizendo que acabou) ou remover o bloco. A saída desonesta é editar `startDate` para uma data futura sem que exista evento. Isso é dado falso, e dado falso derruba a confiança no resto do site.

Regras práticas:

1.  **Evento cancelado ou adiado:** atualize o `eventStatus` (`EventCancelled`, `EventPostponed`) e o texto visível. Não apague a página sem redirecionar.
2.  **Evento que passou e tem valor de histórico:** mantenha a página, deixe a data real e inclua no corpo "evento encerrado", com link para a próxima edição.
3.  **Evento sem valor depois da data:** remova o bloco e, se a URL sair do ar, use [301 limpo](https://grupomarfre.com.br/sites-agenticos/redirecionamentos-301/) para a página que o substitui.
4.  **Turma de curso encerrada:** retire a CourseInstance da lista. O Course permanece.
5.  **Nova edição:** crie um novo Event com URL e `@id` próprios. Não reaproveite o antigo trocando a data.

Na régua do Grupo Marfre, data só muda quando o conteúdo muda. Segundo o mercado, data de "atualizado em" trocada sem alteração real virou gatilho de punição no core update de dezembro de 2025. A mesma lógica vale para o `lastmod` do sitemap, que só deve mudar quando a página muda de fato (veja [Sitemap com lastmod real](https://grupomarfre.com.br/sites-agenticos/sitemap-com-lastmod/) e [Atualizar a data da página ajuda a IA a citar?](https://grupomarfre.com.br/sites-agenticos/frescor-e-data-de-atualizacao/)).

## Como validar e manter esses blocos?

Valide cada bloco antes de publicar e revise a lista de eventos em datas fixas. O roteiro de validação está em [Como validar seus dados estruturados](https://grupomarfre.com.br/sites-agenticos/validar-dados-estruturados/). Se a página busca algum resultado enriquecido no Google, os campos exigidos estão na documentação dele e mudam com o tempo, então confira a página vigente em vez de decorar uma lista.

Um teste simples de manutenção, a cada mês:

1.  Liste todas as páginas com `"@type": "Event"` ou `CourseInstance` (uma busca no código resolve).
2.  Para cada uma, compare `startDate` com a data de hoje.
3.  Data passada: aplique uma das cinco regras acima.
4.  Confira se data, local e preço do JSON-LD batem com o texto visível.

## Perguntas frequentes

### Preciso de Event se o evento só aparece em rede social?

O bloco só existe se houver uma página no seu site para descrevê-lo. Sem página, não há onde colocar o JSON-LD. Criar uma página por evento, com data e local no texto, é o que dá base para o markup.

### Posso usar Event para uma aula experimental ou plantão semanal?

Se tem data, hora e local definidos, pode. Para algo que se repete sem data fixa, descreva em texto simples e evite inventar uma data só para preencher o campo.

### Course serve para curso gravado e sem turmas?

Serve. Use Course com nome, descrição, provider e oferta, e deixe de fora o CourseInstance com data, já que não há turma com início marcado.

### O markup garante que o evento apareça no Google ou nas respostas de IA?

Não. Ele organiza a informação para quem lê a página por máquina, mas a decisão de exibir ou citar é de cada sistema.

## Fontes consultadas

- [developers.google.com/search/docs/appearance/ai-features](https://developers.google.com/search/docs/appearance/ai-features)

## Leia também

### [JSON-LD: o que é e o que se sabe sobre o uso pela IA](https://grupomarfre.com.br/sites-agenticos/json-ld/)

JSON-LD é um bloco de dados no HTML, no vocabulário schema.org. Veja o que é, um exemplo mínimo e o que o Google diz sobre dados estruturados e IA.

### [schema.org: o vocabulário dos dados estruturados](https://grupomarfre.com.br/sites-agenticos/schema-org/)

schema.org é o vocabulário de tipos e propriedades usado nos dados estruturados. Veja o que é, os formatos (JSON-LD e microdados) e quais tipos existem.

### [@id: como ligar os blocos de dados estruturados entre si](https://grupomarfre.com.br/sites-agenticos/id-e-ligacao-de-entidades/)

@id no JSON-LD: como usar um identificador fixo e o @graph para ligar Organization, WebSite e Article e referenciar a mesma empresa em todas as páginas.

### [Como validar seus dados estruturados](https://grupomarfre.com.br/sites-agenticos/validar-dados-estruturados/)

Como validar dados estruturados: Teste de pesquisa aprimorada do Google, validador do schema.org e parse em linha de comando para conferir o JSON-LD.

### [Site agêntico para escola, curso e escola de idiomas](https://grupomarfre.com.br/sites-agenticos/site-agentico-para-escola-e-curso/)

Site agêntico para escola, curso e escola de idiomas: página por curso, schema EducationalOrganization e Course, e por que LanguageSchool não existe.

### [Avaliações no schema: quando pode e quando é violação](https://grupomarfre.com.br/sites-agenticos/avaliacoes-no-schema/)

aggregateRating no schema só vale com avaliação real, coletada e visível no próprio site. Veja quando pode, quando é violação e como testar a sua página.

---

## Sobre o Grupo Marfre

Grupo Marfre Automação e Tecnologia LTDA (CNPJ 49.685.676/0001-55): agência de marketing digital e inteligência artificial com base em Contagem/MG, que atende o Brasil inteiro de forma remota.

- Endereço: Alameda das Cotovias, 75, Cabral, Contagem - MG, Brasil
- WhatsApp: (31) 93618-7272, https://wa.me/5531936187272
- E-mail: contato@grupomarfre.com.br
- Instagram: https://instagram.com/marfregrupo
- Serviços: gestão de tráfego pago (Meta Ads e Google Ads), site agêntico (site pronto pra assistentes de IA lerem), site que vira contato, SEO e Google, IA no WhatsApp, CRM e automação
- Serviço de site agêntico: https://grupomarfre.com.br/servicos/site-agentico/ · serviço de gestão de tráfego: https://grupomarfre.com.br/servicos/gestao-de-trafego/
- Guias: https://grupomarfre.com.br/sites-agenticos/ e https://grupomarfre.com.br/gestao-de-trafego/
- Método em 4 etapas: Diagnóstico, Estratégia, Execução, Otimização
- Segmentos já atendidos: clínica, consultório, advocacia, loja, igreja
- Preço e escopo não são publicados: são definidos por diagnóstico, caso a caso
- Todas as páginas em Markdown: https://grupomarfre.com.br/llms.txt · conteúdo completo: https://grupomarfre.com.br/llms-full.txt

Página HTML equivalente: https://grupomarfre.com.br/sites-agenticos/schema-event-e-course/
