Blog

Automation

Hazel for Mac: what it automates and where it stops

Hazel files whatever lands in a folder, as long as you can name the pattern in advance. What its rules automate, what they cost, and where they stop.

Key insights

  • A Hazel rule is a conditional built from what macOS already knows: name, extension, kind, dates, tags, source URL and location.
  • Contents matching is real but bounded, since Hazel finds a string or pattern only after you have supplied it.
  • For recurring documents from predictable senders, Hazel at $42.00 one time is the right purchase.
  • No rule can answer what vendor an invoice is from when you do not yet know the answer yourself.

What Hazel actually does

Hazel is a Mac utility that watches folders and applies rules to whatever lands in them. You point it at Downloads, describe a condition and an action, and from then on matching files are moved, renamed, tagged or archived without you touching them. Noodlesoft has maintained it for close to two decades, and the current release is Hazel 6.

Watch folders

A watch folder is a folder Hazel monitors continuously. Add one in Hazel's settings and every file that appears there is checked against your rule list, on arrival and again as files age. Most people start with Downloads and the Desktop, the two places files pile up without your permission.

The rule model

A rule is a conditional: if a file matches these conditions, run these actions. Conditions come from what macOS already knows about a file, its name, extension, kind, dates, size, the URL it was downloaded from, its tags, and how long it has sat in the folder. Actions move, rename, sort into subfolders, tag, open, or run a script you provide. Rules stack top to bottom, and the first match wins unless you tell a rule to keep matching.

What it costs

Hazel 6 is a one-time purchase from Noodlesoft's store. A single license is $42.00, a family pack for up to 5 household members is $65.00, and upgrades from earlier versions are $20.00, prices as of July 2026 and subject to change. You pay once and there is no subscription.

Try before buying

Hazel's trial runs 14 days with every feature enabled. Build your first two rules against a copy of your Downloads folder and you will know inside a week whether it fits how you work.

The rules people actually build

Four patterns cover most working Hazel setups. Which one should you build first? Look at your own folder mess, and one of the four will map onto it directly.

Sorting downloads by type

The starter rule. If the extension is dmg, move the file to an Installers folder. If the kind is Image, move it to Pictures. Ten minutes of setup keeps Downloads permanently thin, and you will notice the effect the same day.

Filing by matched text

Hazel can look inside files, and this is where the rule engine gets interesting. The Contents contain condition matches PDFs and text documents against a string you specify, which lets you file paperwork by the sender named inside it. Here is a complete rule written out.

Rule: File Meridian invoices
If all of the following conditions are met
  Kind is PDF
  Contents contain "Meridian Health"
Do the following
  Rename with pattern: Meridian-Health_[date added]
  Move to folder: Documents/Invoices/Meridian

Match patterns push this one step further. Contents contain match accepts a pattern with capture tokens, so you can pull a date or an invoice number out of the text, provided you define the shape of that pattern in advance. Noodlesoft's attribute and action reference lists the full condition set, and the table below shows what each family of conditions can and cannot resolve.

Condition Resolves Cannot resolve
Name and extension Files whose names follow a shape you can describe Anything the filename does not mention
Dates added, created, modified Age-based filing and scheduled cleanup The date printed inside a document
Source URL Which site or portal a download came from What the downloaded file contains
Tags and labels Anything you already tagged by hand Untagged arrivals
Contents contain Presence of a string or pattern you supplied Values you have not predicted, like a new vendor's name

Renaming with tokens

Rename actions assemble filenames from tokens, the current name, dates, a counter, and anything captured by a match pattern. A scan named scan_0034.pdf can leave as 2026-07-27 Meridian scan.pdf using the date-added token. What the tokens cannot supply is a value you never told Hazel to capture.

Archiving on a schedule

Time conditions turn Hazel into a quiet janitor. If the date added is more than 30 days ago, move the file to Archive. If an item has sat in Trash for over two weeks, delete it. Paired with a folder structure that survives daily use, this is the part of filing that genuinely never needs your attention again.

Where Hazel is genuinely the right answer

Hazel wins whenever the pattern is known and recurring. That covers more situations than the skeptical forum threads suggest, and you can check your own case against four of them.

  • The same sender delivers the same document every month, and you can name one string that always appears in it.
  • Your Downloads folder needs permanent hygiene rather than a one-time cleanup.
  • Your filenames follow a predictable shape you can describe with a pattern, like report_2026-Q2.xlsx.
  • You want archiving and trash management running on a schedule in the background.

Notice what the four share. You can write tomorrow's rule today, because the pattern is stable and known in advance. Hazel then executes it identically on file one and file ten thousand, which is exactly the kind of repetition worth handing to software.

If your situation is on that list, buy Hazel. At $42.00 once, it undercuts a single month of most SaaS tools, and nothing else on macOS matches the depth of its rule engine.

Rules fire immediately

A new rule runs on every matching file in the watch folder, not just future arrivals. Point your first version at a test folder with copies, because a wrong pattern can move or rename hundreds of files before you see it happen.

Known patterns versus unknown values

Every condition above shares one requirement: you supply the value first, the way "Meridian Health" came from you. The rule then confirms or denies it per file, forever. What no rule can do is open an invoice from a vendor you have never filed before and tell you who sent it.

A Hazel rule is a conditional built from things macOS already knows about a file: its name, its extension, its dates, its source URL, its tags, its location. Hazel can match on the text inside a PDF, but only against a string you have specified in advance. You must already know what you are looking for. It has no way to answer "what vendor is this invoice from" when you do not yet know the answer.

That is not a flaw you can rule around. It is the difference between pattern-based and content-based tools surfacing inside a rule engine.

When you don't know what you're looking for

Here is the shape of the problem rules cannot take on. 200 invoices from 60 different vendors sit in your Downloads folder after 18 months of portal downloads. Filing them with Hazel means writing 60 Contents contain conditions, one per vendor string, and vendor number 61 arrives next week. The rule engine is not failing. The job is simply not pattern-shaped, and 60 rules is not automation, it is a second filing system you maintain by hand.

Content-based renaming inverts the direction. Instead of checking files against values you supplied, the software reads each document and extracts the values, the vendor name, the document date, the invoice number, whether or not you have ever seen them before. The unknown vendor is exactly the case it exists for. Nothing needs to repeat for extraction to earn its keep either, since a backlog you clear once is a perfectly good reason, where a rule written for one pass is wasted setup.

This is the category Nymos sits in. It reads the document, proposes a name like 2026-02-09_Meridian-Health_INV-3308.pdf, and shows you every proposed rename for review before anything is applied, with undo afterwards. Scanned documents pass through OCR, optical character recognition, first, since a scan is a picture of text rather than text a program can read.

Review-before-apply matters more here than in a rule engine, because extraction makes a judgment per document instead of following your explicit instruction. You confirm 200 proposed names in one pass, correct the few the extractor misread, and apply the rest together. That is still faster than writing rule number 61, and the correction step is where you stay in control, since nothing lands on disk until you have seen it.

Do the two tools compete? Less than you would expect. Extraction answers "what is this file", Hazel answers "what happens to files like this", and a working setup often chains them, extraction producing consistent names, then your existing rules routing those names into folders, since a predictable filename is exactly what a Name condition matches best. If your backlog is financial paperwork specifically, start with organizing a backlog of receipts and invoices and the division of labor becomes concrete.

The honest summary cuts both ways. Hazel is the best rule engine on the platform, and 60 unknown vendors will still defeat it. An extractor reads every vendor without being told, and it will never manage your Trash on a schedule. Match the tool to whether you can name the pattern in advance, and when you want the full map of that split, the pattern versus content comparison lays it out tool by tool. Price the difference in your own hours rather than in license fees, because both tools cost less than the time they replace.

FAQ

Is Hazel worth it in 2026?

For recurring, predictable file flows, yes. One payment of $42.00 buys years of automatic folder hygiene, and no subscription follows it. If your problem is a one-time backlog, or naming documents by values you do not know in advance, the money is better spent elsewhere.

Can Hazel rename files based on their contents?

Partially. Hazel can find a string or a pattern you defined and reuse captured text in the new filename. It cannot read a document and decide on its own what the vendor, date or subject is, which is the job of content extraction tools.

What are the alternatives to Hazel on Mac?

macOS ships Folder Actions and the Shortcuts app, both free and both much shallower than Hazel's rule engine. For naming files by what is inside them, content-based renamers such as Nymos cover the case rules cannot. No Mac app currently replicates Hazel's full condition system, so the honest comparison depends on which job you need done.

Does Hazel work with scanned PDFs?

Only when the scan carries a text layer. Contents conditions match text, and an image-only scan has none to match, so a rule built on Contents contain will pass over it silently. Run OCR on your scans first and the same rule starts matching.

An honest scorecard for Hazel

You have seen the whole span now. Watch folders and stacked conditionals, the four rule families that cover most setups, a one-time $42.00 price that is easy to justify, and the boundary at unknown values where rules hand over to content extraction. Buy Hazel for the recurring patterns you can name, and reach for extraction when the file has to tell you what it is.

Still deciding whether this fits how you work? The related guides below go deeper, or you can see how Nymos handles it.