Website metadata SEO: Schema.org, Open Graph, Dublin Core and standard meta vs. duplicate meta?

I read somewhere that duplicate metadata is considered harmful for SEO

This is nonsense. I don't suppose the article you read referenced an authoritative source for this? I recommend treating with caution any pronouncements of absolute SEO knowledge that aren't either from a search engine or supported by high quality research.

Anyway, you've largely answered your own question. Schema.org is a collaboration between major search engines, including Google, Bing and Yandex. From an SEO point of view, this is the important one.

Likewise, Open Graph (and Twitter Cards) have demonstrable benefits for social.

Standard, valid HTML metadata are supported to varying degrees by different search engines. No harm using any that serve a clear purpose, even if some search engines will ignore them.

Dublin Core, to the best of my knowledge, was never widely supported and so offers little advantage. That said, there's no harm using it if you want to.


Providing metadata is never harmful, unless

  • you try to deceive/spam, or
  • you provide so much metadata that it affects the page’s performance (which is unlikely to happen), or
  • you let it get outdated or don’t care about accurateness.

In general, the more metadata the better. The idea behind this is that you can never know all consumers (neither all that currently exist, nor those that’ll come in the future), so you can’t know which metadata would be useful to provide. And providing what consumers are interested in (so they can do with your data whatever their job is) is the whole point of offering metadata, right?

However, if you are only interested in supporting specific, known consumers, simply provide whatever they document to support. Typically less work, but you’ll possibly exclude many other consumers. (more details)

Duplicate metadata

(Note that the "duplicate content" issue is about something different.)

Duplicate metadata should be no problem for SEO (again, with the exceptions from above).

In Microdata, it’s impossible to use the same meta element as meta tag (with name) and as Microdata property (with itemprop). We can expect consumers to know this, and it wouldn’t make sense for them to require authors to use only one of these ways, as both can be useful and have different use cases.

Of course it’s preferable to avoid duplicating something, if possible. As shown in the linked answer above, RDFa allows a meta element with name and property, so if you use RDFa, using one instead of two elements is the best way to go. Same idea if you have two or more meta tags with the same value: use them together in the same name attribute (e.g., name="DC.Description description").

Syntaxes and vocabularies

Your examples show the use of Microdata (for Schema.org), RDFa (for Open Graph), and plain HTML meta tags (for Dublin Core and the description name).

Note that Schema.org cannot only be used with the syntaxes Microdata and JSON-LD, but also with RDFa. And Dublin Core is also defined as RDF vocabulary, so it can be used with RDFa, too. That means that you could use RDFa to cover Schema.org, Open Graph, Dublin Core, and any other relevant vocabulary.

(As JSON-LD is also a RDF serialization, this would be possible with JSON-LD, too, but at least Facebook doesn’t seem to support to consume the Open Graph data as JSON-LD.)

That means you could avoid using Microdata, and provide only one instead of four meta elements:

<meta property="dc:description og:description schema:description" name="description" content="fdsa" />

(relying on RDFa’s Initial Context, where the prefixes dc, og, and schema are defined)

Conforming consumers pick out what they’re interested in (e.g., for Google’s rich results, Google would only look for the schema properties/types and ignore the rest).