ScreenJSON turns screenplays into analyzable data.


ScreenJSON is a data model and object notation/interchange standard for film and TV screenplays. It provides a way to securely store and analyze scripts as structured semantic documents, which can then be easily exchanged between programs/systems.

A ScreenJSON document is designed for use after a screenplay has been authored, although there is no reason not to use it during the authoring period. A typical scenario would be export the document in a data format and load it into a analysis system.

It is offered freely for anyone to use or adapt under a Creative Commons Attribution-ShareAlike 4.0 International License.

What It Isn’t

ScreenJSON is not a format for specifying the visual presentation of a screenplay in an authoring program. It is designed as a way to structure the data of the document for post-authoring storage and analysis, and is not concerned with how it appears in a UI (e.g. font weight, page numbering etc).

An example situation might be where 1000 screenplay PDFs are imported into a NoSQL database (e.g. Elasticsearch) as JSON for bulk queries or analytics.

What You Can Do With It

A ScreenJSON document is created in standard JSON (Javascript Object Notation) format and can be used in multiple scenarios and applications once it has been exported from an authoring program. For example:

  • As a standalone JSON File (disk, HTTP)
  • An interchange format for exporting to a PDF hard copy
  • Storage in a NoSQL Database
  • Importing into a Production ERP/MRP system
  • Loading into different programming languages
  • Generating translation assets (subtitles, crew scripts)
  • Analyzing semantic content
  • General archiving
  • Encrypted viewing on an iPad app
  • Generating breakdown docs (Excel/CSV)
  • Usage on web platforms (Isomorphic Node)
  • Running NLP aalysis/predictive datasets