Alchemist vs FileFlows
This is a direct comparison for people evaluating FileFlows against Alchemist. It stays on the points that usually drive the decision: licensing, deployment shape, config model, feature gates, and what each tool treats as a first-class feature.
For current FileFlows features and licensing terms, refer to fileflows.com, including its pricing and license-management docs. This page only compares against what FileFlows documents publicly.
At a glance
| Alchemist | FileFlows | |
|---|---|---|
| License | GPLv3, no paid tier, no license key | Free / Personal / Commercial license tiers |
| Config model | Declarative — TOML file and UI settings | Flow editor (node-based) |
| Deployment | Single binary (also a single Docker container) | Server + optional additional processing nodes |
| AV1 target | First-class in the planner | Supported (see FileFlows docs) |
| Hardware acceleration | NVENC, Intel Quick Sync, VAAPI, AMD AMF, Apple VideoToolbox, CPU fallback | Documented hardware support in FileFlows |
| Platforms | Linux, macOS, Windows, Docker | Linux, macOS, Windows, Docker |
| Non-destructive by default | Yes — originals not deleted unless delete_source is set | Configurable per flow |
Choose FileFlows if
- You want to model complex conditional pipelines in a graphical flow editor.
- You rely on specific FileFlows plugins or flows you don't want to re-express.
- You need a broader general-purpose file automation suite, not just media optimization.
- You already have a working FileFlows deployment and no concrete reason to change.
Choose Alchemist if
- Licensing matters to you. Alchemist is GPLv3 source, binary, and distribution. No paid tier, no license key, no commercial-use gate. See Open Source.
- You prefer declarative config over a flow editor. The planner decides per file whether to skip, remux, or transcode based on thresholds and rules you set. See Planner and Skip Decisions.
- You want the deployment to be one service. Alchemist is a single binary that embeds its own web UI; no separate frontend to run.
- You care about transparent skip decisions. Every skipped file records the exact reason in plain English (BPP, size, codec match, predicted savings).
- You're transcoding primarily for Jellyfin or Plex. See Alchemist for Jellyfin.
Practical differences
Config model
FileFlows' flow editor is its core strength and its core tradeoff. Visual flows make complex branching visible; they also mean the source of truth for "what does this system do?" lives in an interactive canvas rather than a text file.
Alchemist is the opposite shape. The source of truth is a TOML file plus a handful of per-library profiles. Behavior is determined by a small set of thresholds and rules; the UI reflects config rather than being where config lives. For many libraries that's all that's needed. For libraries that genuinely need conditional graphs, a flow editor is a better fit.
Licensing
This is the most common reason people come looking for a FileFlows alternative. FileFlows' own pricing page documents Free, Personal, and Commercial tiers, including differences in processing nodes, flow runners, flow elements, database types, paid support, commercial use, and advanced features. Its license page documents license email/key entry and features that depend on license level.
Alchemist does not have that layer. It is GPLv3 with no paid tier, no license key, no private unlock, and no separate commercial feature set. Everything in Alchemist is in the public source tree and stays that way. See Open Source for the specifics.
Hardware selection
Alchemist probes each available encoder at startup and selects one active device using a deterministic scoring policy. A valid detection result is cached across repeat boots, and the probe log shows exactly why every probed backend succeeded or failed. See Hardware Acceleration.
Moving off FileFlows
There's no direct import — the abstractions differ. Typical migration:
- Install Alchemist next to FileFlows. Docker is straightforward.
- Point it at the same library roots.
- Run
alchemist plan /pathto see decisions without enqueueing. See Installation. - Re-express conditional flows as Profiles + Stream Rules + target codec.
- Disable FileFlows on the same library once behavior matches what you want.
FAQ
Is Alchemist free? Yes. GPLv3, no paid tier, no license key. Every feature lives in the public source tree. See Open Source.
Does Alchemist have a flow editor? No. Configuration is a TOML file plus per-library profiles and stream rules. This is intentional — if you specifically need a visual flow graph, FileFlows remains the better fit.
Can Alchemist read FileFlows flows? No. Migration is a re-configuration, not an import. See the migration section above for the typical path.
Does Alchemist support distributed processing? Not today. Alchemist runs as a single process that scales with the host it's on. FileFlows' optional processing nodes are something Alchemist does not currently try to match.
How does Alchemist decide what to transcode? The planner evaluates each file against thresholds — bits-per-pixel, minimum file size, target codec match, predicted savings — and records a plain-English reason for every skip. See Skip Decisions. This is the single biggest shift from a flow-based tool.
Can I try it without touching my library?
Yes. alchemist plan /path runs the full analysis and
reports the per-file decision as text (or --json) without
enqueueing any work. See Installation.