Something wrong with this tool?

About Changelog Formatter Online

This tool formats and normalises CHANGELOG.md files. It parses existing changelog entries, sorts them by version and date, normalises section headers (Added/Changed/Deprecated/Removed/Fixed/Security), and outputs a clean Markdown changelog following the Keep a Changelog convention.

A consistent changelog is a small effort that pays off for everyone reading your release notes: contributors, users wondering what's new, and your future self trying to remember when a feature shipped.

The tool can convert between formats (free-form to Keep-a-Changelog), highlight common mistakes (missing version numbers, unordered entries), and produce GitHub release notes from your CHANGELOG entries.

How to use this tool

How to turn loose commit lines into a Keep-a-Changelog section

  1. Paste raw commit lines

    Drop one commit summary per line into the "Commits (one per line)" field. Conventional Commit prefixes are recognised: `feat:`, `fix:`, `docs:`, `chore:`, etc. Lines without a known prefix go under `### Other`.

  2. Press Run

    Result returns a single `markdown` field — a Keep-a-Changelog-style block grouped into `### Added`, `### Fixed`, `### Changed`, `### Docs`, and `### Other`. Empty groups are omitted.

  3. Output structure

    Lines after grouping keep their original wording (minus the prefix). It does NOT auto-generate dates or version headers — that you add yourself: paste a `## [1.4.0] - 2026-05-19` line above the generated groups before committing.

  4. Tips for clean output

    Run the tool against the output of `git log v1.3.0..HEAD --pretty=%s`. Bad / vague commit subjects produce bad changelog lines; this isn't AI-rewriting, just sorting.