Chess

Chess client vs online chess sites

By Rank Timber editorial team Current release, published September 22, 2025

Framed file-rank panel with an umber file crossing a sand rank on board-ash paper.
File-rank panel: algebraic file and rank bars used as the chess mark across this install guide. Rank Timber original file-rank geometry for factory-chess (not a PyChess logo).

A local chess client and an online platform solve different jobs. PyChess stores PGN on disk and talks to engines. Websites sell or gift live opponents and ratings.

Where each path wins

PyChess wins when you want a GPL-3.0 GTK window, named GitHub assets, and offline play after the first download. Chess.com wins at a huge live pool and paid extras. Lichess wins at a free website with studies. Arena wins for some Windows engine rooms.

PathBest atNeeds accountOffline
PyChessLocal GTK play and analysisNoYes after download
Chess.comLive pool and paid extrasYesLimited
LichessFree website studiesOptionalBrowser
ArenaWindows engine matchesNoYes

Download doors

PyChess uses GitHub Releases. Websites use their own domains. Mixing those doors is how adware pages sneak in. Safe path: download safe.

Files and engines

PyChess opens PGN, EPD, and FEN and can attach UCI or CECP engines. Website analysis stays on the site. Engine notes: PGN and engines.

Cost

PyChess is free under GPL-3.0. Websites may be free with paid tiers. This guide does not sell those tiers. Home comparison: home.

How to decide

If the job is a rated blitz pool, keep the website. If the job is a local board that still works on a train, install PyChess. Many desks keep both and document which one owns matchmaking.

Related pages

Switch: switch from online chess sites. Guide: chess vs online sites. Arena: vs Arena.

Keep one installer door forever. Mixing adware wrappers with GitHub Releases on the same PC creates duplicate installs and confused uninstalls. After every reimage, prove one short local game before you call the machine ready.

Rank Timber maps filenames for people who searched for a local chess client and need a GTK PyChess path. Upstream remains at pychess.github.io and pychess/pychess under GPL-3.0. Website billing stays your responsibility and stays separate from the program licence.

When Releases add or drop OS assets on a tag, re-check the live list before you image a classroom. Prefer the Windows mingw MSI when that is the door. Prefer the Linux .deb when you want the same tag. Refuse review portals that only rank with a renamed setup.

  • Match pychess-*-mingw_x86_64_msvcrt_gnu.msi on Windows when Releases is the door.
  • Use python3-pychess_*.deb on Debian or Ubuntu when the .deb is allowed.
  • Use the Fedora noarch rpm from the same honest tag when that is the policy.
  • Keep website boards as a brief fallback while you prove the local game.
  • Return to the same door for updates instead of inventing a mirror.

Family PCs, student laptops, and shared desks all benefit from the same rhythm: one installer door, one PGN folder, one documented engine. That is how the habit stays boring in a good way.

When someone pastes a random download link into chat, ask for the GitHub Releases URL instead. The install path on this guide always returns to pychess/pychess.

Club nights go faster when the laptop already has PyChess from the named MSI or .deb. Travel bags go quieter when the same filename is written on a tape label. Lab techs waste less time when SmartScreen prompts point at a URL they typed, not at a renamed portal.

If a teammate insists on a website for rated games, leave that bookmark in the browser and still keep the desktop client for analysis. The two jobs are different. This guide maps the desktop job.

Ticket lines that survive a reimage

Write the GitHub org, the filename class, and the PGN folder on one line. After a reimage, a substitute can restore the GTK window without hunting a portal. That boring line is the whole operations habit.

  • Org: pychess/pychess
  • Windows: pychess-*-mingw_x86_64_msvcrt_gnu.msi
  • Linux: python3-pychess_*.deb or the py312 noarch rpm
  • PGN folder on a disk you back up

Club nights go faster when the laptop already has that line. Travel bags go quieter when the same MSI name is on tape. Labs waste less time when SmartScreen points at a URL someone typed.

If a teammate pastes a random setup into chat, ask for the GitHub Releases URL instead. Named assets beat ranking pages.

Keep website boards as a fallback when live ratings are the job. Keep PyChess as the local analysis window. The two jobs stay separate on the ticket so a third unofficial GUI does not appear from a search ad.

Rank Timber maps filenames. Upstream remains GPL-3.0 at pychess.github.io. When Releases change asset names, re-check the live tag before you image a classroom. Related: guides and first hour.