Articles
Published · October 8, 2026

Fountain: Writing a Screenplay in Plain Text

Fountain is a plain-text markup for screenplays, inspired by Markdown. Learn how scene headings, characters, and dialogue work, and when plain text is enough.

Fountain is a plain-text markup for screenplays: you type a script in any text editor, and the file still reads like a screenplay. It was announced in 2012 by John August and Stu Maschwitz, and its own site describes it as "a simple markup syntax for writing, editing and sharing screenplays in plain, human-readable text."

Quick answer

Fountain borrows the spirit of Markdown and applies it to screenplay elements. Scene headings, character names, dialogue, and transitions are recognised from how the lines look, so there's little to memorise. The format's golden rule, per the syntax reference, is "make it look like a screenplay."

The idea came from two earlier projects. Wikipedia's history of the format) describes Fountain as a merger of Scrippets, which August built with Nima Yousefi, and Stu Maschwitz's Screenplay Markdown, and it credits Markdown's influence. The practical payoff is the one August spelled out in his announcement: plain-text scripts stay editable. "You'll be able to open and edit them 100 years from now."

How Fountain works

Most of a script needs no markup at all. Here is a short scene:

Title: The Late Bus
Author: A. Writer

INT. BUS STOP - NIGHT

Rain. A single bench under a flickering light. MARA checks her phone.

MARA
(under her breath)
Come on.

A bus rolls past without stopping.

MARA
Of course.

CUT TO:

That's the whole idea. A few rules do the work.

The core elements

  • Scene headings begin with INT, EXT, EST, INT./EXT, INT/EXT, or I/E, with a blank line before and after.
  • Character is a line in all capitals, with a blank line above it and none below. Extensions such as MOM (O.S.) are fine.
  • Dialogue is whatever follows a character line. A parenthetical is a line in parentheses between them.
  • Transitions are uppercase lines ending in TO:, like CUT TO:.
  • Action is everything else, and its line breaks are kept as you typed them.
  • Title page values are plain Key: value pairs at the top of the file, such as Title, Author, and Draft date.

Forced elements

When the guesswork is wrong, a single leading character overrides it. A period forces a scene heading, ! forces action, @ forces a character name (handy for mixed case, like @McCLANE), and > forces a transition. Dual dialogue takes a caret after the second character name, as in STEEL ^.

Notes, boneyard, and sections

Some elements exist for you, not for the reader of the final script, and they never appear in the output:

# Act One

= Mara misses the last bus.

[[Check the timeline before this scene.]]

/* This cut scene is ignored entirely. */

Sections use Markdown-style # headings, synopses start with =, notes sit in double brackets, and the boneyard /* */ hides whole passages. Together they give you an outline inside the script. If you are weighing Fountain against other markup, Markdown vs AsciiDoc vs reStructuredText covers how plain-text formats trade off.

Emphasis follows the Markdown pattern too: *italics*, **bold**, and _underline_.

When to use it (and when to skip it)

Fountain suits the writing phase. You can draft on any device, keep scripts in version control, and archive them without worrying about file-format obsolescence, which the project lists as a goal. Fountain files are plain text and commonly use the .fountain extension, so the advice in picking the right file extension applies here too.

Fountain doesn't try to cover everything. It deliberately leaves out production features such as revision marks and coloured pages. August's announcement rejected the idea of a "Final Draft killer," arguing that "the tools should match the job." If your script is heading into a production that needs revision tracking, move it into a dedicated screenwriting app when that point arrives.

There are honest trade-offs. A plain editor shows markup, not formatted pages, so you rely on the script looking right as text. And one mistyped line, such as a character name that is not fully capitalised, can be read as action.

How Carets fits in

Carets is a fast, native notes and code editor for iPhone, iPad, and Mac, and it treats a .fountain file as what it is: plain text. You write the scene above, keep notes and the boneyard inline, and your script stays a portable file you can open anywhere.

Two things help a screenplay in particular:

  • Files, projects, and tags. Keep each script in a project, and park loose scene ideas as separate files you tag and pull in later.
  • Native and fast. It is built for iOS and Mac rather than wrapped web code, so a quick fix on a phone costs seconds.

Carets is for the writing, not for laying out finished pages. Before you start piling up drafts, read a simple backup plan for plain-text files.

Get Carets for iPhone, iPad, and Mac on the App Store.

Frequently Asked Questions

What file extension does Fountain use?

Fountain files are plain text, and .fountain is the common convention. Any text editor can open one; the extension mainly helps screenwriting tools recognise the file.

Is Fountain the same as Markdown?

No. Fountain was inspired by Markdown and shares a few habits, like # for sections and * for emphasis, but it is a separate syntax built for screenplay elements: scene headings, characters, dialogue, and transitions.

Can I use Fountain for a final production script?

Fountain is aimed at writing. It intentionally omits production features such as revision marks and coloured pages, so a production that needs them will want a dedicated screenwriting app.

How do I fix an element Fountain reads wrongly?

Prefix the line to force it: a period for a scene heading, ! for action, @ for a character name, and > for a transition.