# META - Metadata

Syntax | <META>

Attribute Specifications

- NAME=Name (property name)
- HTTP-EQUIV=Name (HTTP response header name)
- CONTENT=CDATA (associated data)
- SCHEME=CDATA (form of data)
- internationalization attributes (for the CONTENT)

Contents | Empty
Contained in | HEAD

The META element provides metadata such as a document's keywords, description, and author. Any number of META elements may be contained in the HEAD of a document.

META's NAME attribute provides a property name while the CONTENT attribute gives the corresponding value. The CONTENT attribute value may contain text and entities, but it may not contain HTML tags.

The optional SCHEME attribute gives the format of the property value. For example, a date property may require SCHEME="Month-Day-Year" to disambiguate the date from other formats such as SCHEME="Day-Month-Year".

There is no standard list of META properties, so authors may define whatever metadata they like. The following example defines the author of the document:

`<META NAME=author CONTENT="Liam Quinn">`

Some search engines use keywords and description properties, giving extra weight to a document's keywords and providing its description with the link to the document. Example:

`<META NAME="description" CONTENT="A description of HTML 4.0's META element for metadata.">
<META NAME="keywords" CONTENT="META, meta element, metadata, metainformation, meta data, meta information, keywords, description, refresh, HyperText Markup Language, HTML, HTML4, HTML 4.0, Web Design Group, WDG, &lt;meta&gt; tag, &lt;META&gt; tag">`

To avoid being truncated by search engines, the description should be brief--no more than 200 characters. Keywords are separated by commas and may be considered case sensitive by search engines. If the same keywords are repeated too often in the META element, some search engines will not index the document. Search engines typically only process the first 1000 characters of the keywords list.

Some search engines also support the robots property for indicating whether a document should be indexed and whether its links should be followed. The associated CONTENT value is a comma-separated list of case-insensitive directives:

- index specifies that the page should be indexed while noindex specifies that it should not be indexed;
- follow specifies that the page's links should be followed while nofollow specifies that they should not be followed;
- all is equivalent to index,follow (the default value);
- none is equivalent to noindex,nofollow.

For example, the following META element tells search engines and other robots not to index the page but to follow links on it:

`<META NAME=robots CONTENT="noindex,follow">`

Few search engines support the robots property at this time. For greater compliance by robots, authors should use the Robots Exclusion Protocol if possible.

The HTTP-EQUIV attribute may be used in place of the NAME attribute to indicate that the property is an HTTP header. Some servers will send the HTTP header specified in the META element, and browsers often recognize the header even when it is not sent by the server. Examples:

`<META HTTP-EQUIV=Expires CONTENT="Sun, 22 Mar 1998 16:18:35 GMT">`
  sets the expiry date of the document.
`<META HTTP-EQUIV="Content-Script-Type" CONTENT="text/javascript">`
  sets the client-side scripting language for inline scripts to JavaScript.
`<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">`
  sets the style language for inline styles to CSS.
`<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=SHIFT_JIS">`
  sets the character encoding for the document to SHIFT_JIS (a Japanese encoding). Note that using META for this purpose rather than a true HTTP header causes some browsers to redraw the page after initially displaying it.
`<META HTTP-EQUIV=Refresh CONTENT="10; URL=http://www.htmlhelp.com/">`
  tells the browser to load http://www.htmlhelp.com/ 10 seconds after the current document has finished loading. Not all browsers support this, so authors should provide an alternate means of moving to the new page where necessary. The Refresh header is sometimes used for "splash screens" or when a page has moved, but the technique is not very effective since users may not even be looking at the window that is to be refreshed and since it messes up the user's history on many browsers. Some search engines penalize pages that use a Refresh of a few seconds or less.

## More Information

- META in W3C HTML 4.0 Recommendation
- META in W3C HTML 3.2 Recommendation
- META in HTML 2.0 Standard
- META in WDG HTML 3.2 Reference
- META in Learning HTML 3.2 by Examples
- Metadata at W3C
- The META tag: Controlling how your Web page is indexed by AltaVista
- Infoseek Submitting Tips
- HotBot FAQ: Descriptions, Titles, Keywords, and <meta> Tags
- Lycos Help: Robots Meta Tag
- Robots Exclusion
  - HTML Author's Guide to the Robots META tag