Suggestions appear as you type. Use the up and down arrows to choose one and Enter to open it.

This page's audience our own tag's counts — open to see them
–Visits
–Page views
–Clicks to vendors
–Time on page
–Reading now
Clicks to vendors, by tool
  • –
Top countries
  • –
Devices
  • –

– · visits, page views and clicks counted by our own tag, which counts more than our checked analytics; every figure rounded down · how we count

YAPF review

Free#30 of 34 in Code Formatting Tools

A flexible Python formatter with strong control over styles, diffs, and scope.

6.3/10Editor score
YAPF6.3 Visit YAPF

Reviewed by iTechGuides Editors · Editorial team · Updated Oct 2026

YAPF is an open-source command-line and library-based formatter for Python source code. It suits developers and teams that want configurable formatting across individual files, directory trees, selected line ranges, or changed lines from unified diffs. It runs on Windows, macOS, and Linux, and requires Python 3.7 or newer. Developers can also use its FormatCode and FormatFile library APIs when formatting needs to be part of a Python workflow.

Scope control is one of YAPF's clearest strengths. It can format in place, generate unified diffs, run formatting in parallel, and exclude files through .yapfignore or patterns in pyproject.toml. Style configuration covers PEP 8, Google, YAPF, and Facebook options, giving teams a way to align output with an established preference rather than accepting a single fixed format. The yapf-diff tool adds a focused workflow for formatting only changed lines, which can help limit formatting changes in active codebases.

YAPF also fits common Python editing environments through plugins and extensions for IntelliJ/PyCharm, IPython, and Visual Studio Code. Its open-source model and library APIs make it suitable for teams that want to incorporate formatting into their own tooling. The trade-off is focus: it supports Python rather than multiple languages, and its verified editor integration set is narrower than some alternatives. The package metadata marks the project beta, and Google's ownership of the code does not make YAPF an official Google product. Choose YAPF for configurable Python formatting with granular scope control; consider an alternative if broader language coverage or a wider integration ecosystem is a priority.

YAPF pros and cons

  • Where it wins
    • Formats files, directories, line ranges, and changed lines
    • Supports PEP 8, Google, YAPF, and Facebook styles
    • Includes library APIs, ignore patterns, and editor plugins
  • Where it doesn't
    • Supports Python only
    • Verified editor integrations are limited to IntelliJ/PyCharm, IPython, and VS Code
    • The project is marked beta in its package metadata

YAPF fact sheet, pricing and score →

Advertiser disclosure: iTechGuides is reader-supported. Vendors can pay for top positions in our rankings and for a place on other products' pages, and we may earn a commission when you click some links. Bought places stand at the number bought; this page and our disclosure say so. Paying vendors may get a fuller, more detailed review from our editors, and that review can change their score. How we rank.

Last updated · How we research and update