A naming pattern that scales with a project

A simple, human-readable naming pattern helps files remain findable, sortable, and shareable as projects grow. The goal is consistent order and a few guardrails, not a filename that describes everything.

Why naming breaks down

Names often start clear and drift slowly. One person adds a date, another abbreviates the project, and someone else writes final-final because the earlier final copy changed. Over time, alphabetical sorting becomes useless and people open several files just to identify the current one.

  • Inconsistent field order prevents reliable sorting.
  • Missing context forces people to open files to identify them.
  • Too much metadata produces brittle names that are hard to type.
  • Local abbreviations stop making sense when work changes hands.

The pattern

Use a short set of fields in a fixed order, separated by hyphens. Include only the fields that help someone identify, sort, or act on the file.

YYYY-MM-DD-project-phase-type-subject-v##-status.ext

Not every file needs every field. A durable final deliverable may need the project, subject, version, and status. A meeting note may need only the date, project, and document type.

Field rules

Date
Use YYYY-MM-DD only when chronological sorting or event context matters.
Project
Choose one short, stable slug. Do not rename it midway through the project.
Phase
Use a phase only when it changes how the file is grouped or retrieved.
Version
Use zero-padded numbers such as v01, v02, and v03.
Status
Use the shared vocabulary: draft, reviewed, approved, final, or archived.

Worked examples

2026-07-10-river-folder-handoff-v03-reviewed.pdf

A dated review copy where version and review state both affect use.

project-brief-current.md

A living project brief with one obvious current copy.

archive-inventory-2026.csv

A yearly inventory where the year defines the reporting period.

Avoid final-final-2.pdf

If an approved file changes, increment the version and run approval again. Do not preserve a false final state.

When to stop encoding metadata

A filename is not a database row. Keep ownership, long descriptions, approvals, retention notes, and open decisions inside the document, a README, or a package index. If a field does not help people find or choose the file, it probably does not belong in the name.

Put it into practice

  1. Collect ten representative files from one active folder.
  2. Write the minimum fields needed to distinguish them.
  3. Choose one field order and one separator.
  4. Rename the sample set and inspect alphabetical sorting.
  5. Document the convention in the project README.

Do not mass-rename an archive until you have tested links, references, and downstream tools that may depend on existing paths.