What is the correct JSON content type?

For JSON text:

application/json

The MIME media type for JSON text is application/json. The default encoding is UTF-8. (Source: RFC 4627)

For JSONP (runnable JavaScript) with callback:

application/javascript

Here are some blog posts that were mentioned in the relevant comments:

  • Why you shouldn't use text/html for JSON
  • Internet Explorer sometimes has issues with application/json
  • A rather complete list of Mimetypes and what to use them for
  • The official mime type list at IANA from @gnrfan's answer below

IANA has registered the official MIME Type for JSON as application/json.

When asked about why not text/json, Crockford seems to have said JSON is not really JavaScript nor text and also IANA was more likely to hand out application/* than text/*.

More resources:

  • Media Types
  • Request for Comments 4627
  • bluesmoon: JSON has a type