Freedom report

Three barsScore 6.6

  • Free tierA free tier is on its own pricing page
  • Runs widely3 of 6 device platforms
  • DocumentedPlans, terms and facts published

wmk is a free Python command-line tool for applying image or text watermarks to image files. It supports JPG, JPEG, PNG, WEBP, TIFF, BMP, and GIF, and can process folders recursively or take glob patterns for batch jobs. Watermarks can be placed in any corner or at the center, with opacity adjustable from 0 to 100. A dry-run option prints the planned outputs without writing files. By default, folder batches go into a watermarked directory while preserving relative folder structure; existing destination files are not replaced without the overwrite option, and a _watermarked suffix helps avoid collisions. The README describes it as an offline tool that keeps images on the user's machine. Install it with pip, pipx, or from a repository clone; it requires Python 3.10 or newer. The CLI is the primary interface, with an optional Python library interface. The project is MIT-licensed and lists Windows, Linux, and macOS support. GIF processing handles only the first frame. The package metadata links to GitHub Issues for support.

Who it is for

wmk suits desktop users who want to watermark images in repeatable or batch workflows using a command line. It may also suit Python users who want the optional library interface.

What is good

  • Batch processing supports folders and glob patterns.
  • Opacity ranges from 0 to 100.
  • Dry runs show planned outputs without writing files.
  • The README describes offline processing.

What to know first

  • Requires Python 3.10 or newer.
  • GIF processing handles only the first frame.
  • The primary interface is command-line based.

Verdict

wmk offers batch watermarking, placement controls, and local processing for users comfortable with a command line. Its Python requirement and first-frame-only GIF handling are important limits to check.

Get started with wmk

  1. Install Python 3.10 or newer.
  2. Install wmk with pip or pipx, or clone its repository.
  3. Choose image or text watermarking for your files.
  4. Set a position and opacity from 0 to 100.
  5. Use a dry run to preview planned outputs, or run the batch job.

What the free plan stops at

GIF processing handles only the first frame.

Questions about wmk

How much does wmk cost?

The listed plan is free. No paid plans are listed.

Which operating systems does it support?

The listed platforms are Linux, macOS, and Windows.

Is wmk open source?

Yes. It is offered under the MIT License, which permits use, copying, modification, distribution, sublicensing, and sale subject to its conditions.

Which image formats does it support?

It supports JPG, JPEG, PNG, WEBP, TIFF, BMP, and GIF for input and output. GIF processing handles only the first frame.

How can I install it?

Install it with pip or pipx, or from a cloned repository. It requires Python 3.10 or newer.

Does wmk offer an API?

API access is listed. The project also provides an optional Python library interface, while the command-line interface is its primary interface.

wmk plans and pricing

All plans
add-watermark Free MIT-licensed Python CLI; no paid plans listed github.com · 11 Oct 2026

Compared on photo watermarking software

Batch watermarking
Yes
Logo marks
Yes
Supported platforms
Windows and Linux
API access
Yes

Best wmk alternatives

See all 20