Camera names like IMG_4821.JPG say nothing about what a photo is or when it was taken. Add files or a whole folder, stack a few rename rules, and check every old and new name side by side before you save anything. Your files stay on your device the whole time.
Processing locally on your device
Overview
The renamer works with a stack of rules that run from top to bottom, each one building on the last. Find & replace handles plain text or regular expressions with capture groups ($1, $2). Prefix and suffix add fixed text. Numbering inserts a counter with your own start value, step and zero padding, before or after the name or in place of it. Case change offers lowercase, UPPERCASE, Title, Sentence, camelCase, PascalCase, kebab-case and snake_case. Trim & remove collapses spaces, strips characters you list and cuts a set number of characters from either end. Slugify turns names into web-safe ASCII, and the extension rule lowercases, uppercases, changes or removes the extension. For full control, a pattern rule builds the name from tokens such as {name}, {n:3}, {date:YYYYMMDD}, {exif} and {folder}.
Dates can come from three places: the file’s last-modified time, today’s date, or the moment a photo was taken. For JPEG and TIFF-based files, the tool reads the EXIF DateTimeOriginal tag with a small built-in parser that only looks at the first 256 KB of each file. A modified date can change whenever a file is copied or synced, so the capture date is usually the reliable one for photo shoots. If a file has no EXIF date, the row is flagged and the modified date is used instead.
The preview table updates as you type and checks every result. It flags two files that would get the same name in the same folder, compared case-insensitively because Windows and macOS treat Photo.jpg and photo.JPG as the same file. It also flags names that break on common systems: characters such as < > : " / \ | ? *, trailing dots or spaces, reserved Windows names like CON or NUL, and names longer than 255 bytes. You can order the files by name (natural order, so 2 sorts before 10), modified date, date taken, size or type, or drag rows by hand. Counters always follow the order you see.
A web page cannot normally change files on your disk, so the default output is a ZIP of renamed copies with the folder structure kept if you want it. Your originals are not touched. In Chrome and Edge, which support the File System Access API, a folder added with Add folder can also be renamed in place once you confirm. Swaps and case-only changes go through temporary names so nothing gets overwritten, files outside the batch are never replaced, and an Undo button reverses the last batch while the page is open. A CSV export records every old and new path.
| Rules (in order) | Before | After |
|---|---|---|
| Date (EXIF, prefix) → Numbering (3 digits) | IMG_4821.JPG | 2026-06-14_IMG_4821_001.JPG |
| Pattern {exif:YYYYMMDD}_trip_{n:3} → Extension lower | DSC0012.JPG | 20260614_trip_001.jpg |
| Find “Copy of ” → Trim & remove “()” → Slugify | Copy of Report (2).pdf | report-2.pdf |
| Regex ^SKU (\d+) (\w+)$ → sku-$1-$2 → Case lower | SKU 4411 FRONT.jpg | sku-4411-front.jpg |
| Case kebab-case → Extension lower | HeroBanner Final.PNG | hero-banner-final.png |
Drop files or folders onto the page, or use Add files / Add folder.
Stack rules in the sidebar: find & replace, numbering, dates, case, slugify and more.
Sort the list or drag rows into order. Counters follow the order shown.
Fix any rows marked as conflicts or invalid names.
Download a ZIP of renamed copies, or choose Rename in place (Chrome/Edge) and confirm.
Optionally export a CSV of old and new names as a record.
Use cases
Turn 400 camera files into 2026-06-14_wedding_001.jpg and onwards using the EXIF capture date and a padded counter, so the set sorts chronologically on any computer even after the files have been copied.
Use find & replace with a regular expression to convert supplier names like SKU 4411 FRONT.JPG into sku-4411-front.jpg, the lowercase, hyphenated style that most e-commerce importers and CDNs expect.
Strip “Copy of” and bracketed numbers, collapse double spaces, slugify and number scanned pages so a messy folder becomes a tidy, predictable sequence.
Convert design exports to kebab-case or snake_case with lowercase extensions so asset names match code conventions and don’t break on case-sensitive Linux servers.
Pro tips
Answers to common questions about the batch renamer.
Only after you allow it. In Chrome and Edge, a folder added with Add folder can be renamed in place: you confirm the list, then the browser asks for permission to edit that folder. In other browsers, you get renamed copies in a ZIP and the originals stay as they are.
Two files that would end up with the same name in the same folder. The check ignores case, because Windows and macOS do too. The ZIP download and in-place renaming stay disabled until every conflict and invalid name is fixed.
It reads DateTimeOriginal, the moment the shutter fired, falling back to DateTimeDigitized and the basic DateTime tag. JPEG and TIFF-based files such as DNG are supported. Files without EXIF use their last-modified date and are flagged in the preview.
Just write rules that produce the swap. When renaming in place, any file whose new name is still in use by another file in the batch is first moved to a temporary name, so swaps and case-only changes like IMG.JPG → img.jpg work safely.
No. The extension rule only changes the name. Renaming photo.png to photo.jpg does not turn it into a JPEG. Use a converter for that.
Yes, while the page stays open. The Undo button reverses the last batch using the same safe method. For a permanent record, export the CSV of old and new names before you rename.
No. ToolEnhancer processes files on your own device inside the browser. They are never sent to, stored on or seen by our servers.
Yes. The batch renamer is free to use with no sign-up, no watermarks and no daily limits.
Resize, convert and compress in one pass.
Convert hundreds of images at once.
Strip metadata from many photos.
Chain tools into reusable pipelines.
Bundle files into a ZIP archive.
Record your screen, tab or window.