ByteScope

Bulk Rename

Pick a folder on your disk, stack up rename rules, preview every old name against its new one, then apply in place — from a web page, with nothing uploaded.

The folder is opened by the browser on your own machine. File names are read, renamed and put back on your disk — nothing is uploaded, and nothing about the contents ever leaves this tab.

Folder

Pick one folder. Renaming happens inside it, so files in subfolders are left alone — open the subfolder itself to work on those.

folder
files
0
ticked
0

Rules

Rules run top to bottom, each one working on what the one above produced. Add as many as you need — the preview updates as you type.

No rules yet. Add one above and the preview appears.

Naming rules to enforce

Portable is the union of both rule sets. A browser cannot tell whether this folder syncs to a Windows machine tonight, and a name Windows quietly rewrites is a file that goes missing.

True by default, because that is how macOS and Windows ship. A rename that only changes letter case is then staged through a temporary name, which is why an extra step appears.

Browser support

Renaming and deleting files where they sit needs the File System Access API, which only Chromium browsers ship. Everything below happens on your machine either way — nothing is ever uploaded.

capabilityChromeEdgeFirefoxSafari
Open a folder from diskwindow.showDirectoryPicker — Chrome/Edge 86 and later, desktop onlysupportedsupportednot supportednot supported
Rename a file in placeFileSystemFileHandle.move — Chrome/Edge 111 and latersupportedsupportednot supportednot supported
Delete a file in placeFileSystemDirectoryHandle.removeEntrysupportedsupportednot supportednot supported
Remember the folder for next timethe handle is kept in IndexedDB on this device; permission is asked againsupportedsupportednot supportednot supported

detected in this browser

  • window.showDirectoryPicker
  • FileSystemFileHandle.move
  • indexedDB

On Firefox or Safari, or on any phone or tablet, this page can explain the job but cannot do it. Open it on desktop Chrome or Edge.

About this tool

Batch renaming has always meant installing something — Bulk Rename Utility, PowerRename, a shell one-liner — because a web page could only see files you uploaded to it. The File System Access API changed that: this page asks for a directory with showDirectoryPicker, you grant it write access, and it renames your files where they sit. Nothing is copied, nothing is uploaded, and there is nothing to install or sign into. The catch is stated up front instead of discovered at the end: the API exists in Chromium desktop browsers — Chrome and Edge — and not in Firefox or Safari, and the page tells you so honestly rather than failing quietly.

A chain of rules, applied in order

Renames are built from small rules stacked into a pipeline: find and replace, prefix and suffix, sequential numbering with padding, case conversion, and a regular-expression mode with capture groups for the jobs the simple rules cannot express. For photos there is a rule that reads the file's EXIF capture date and inserts it into the name — the actual DateTimeOriginal, not the file's modified time, which reshuffles every time a file is copied. Each rule's output feeds the next, so IMG_0231.jpg can become 2024-06-14_holiday_001.jpg in a single pass.

The preview is the contract

Nothing is renamed while you build. Every file is listed with its current name beside the exact name it will get, recomputed as you edit the chain, and conflicts are flagged before you can apply: two files mapping to the same target, a new name colliding with an existing file, characters the file system will reject. You confirm the whole batch explicitly, and the list you previewed is precisely the list that executes — no surprises between the preview and the disk.

Undo, and its honest limits

After a batch runs, one click renames everything back: the tool records the old-name/new-name pairs and keeps them in your browser's local storage, so the undo survives a reload — close the tab, come back later, reopen the folder, and the batch can still be put back. The flip side deserves saying out loud: that record of what you renamed sits in your browser until the next batch replaces it. And undo is honest rather than magical — it can only restore a name that is still free, and it refuses to run against a different folder that merely shares the recorded folder's name. The working pattern it is built for: rename, look at the result, and undo if it is wrong.

Frequently asked questions

Which browsers can do this?

Chromium desktop browsers: Chrome, Edge, and Chromium derivatives like Brave and Opera. Renaming files in place needs the File System Access API with write permission, which Firefox and Safari have not implemented — on those browsers the page shows an honest notice instead of a broken tool. Mobile browsers are out for the same reason, including Chrome on Android and everything on iOS. This is the price of the trick: renaming on your own disk from a web page only exists where the API does.

Are my files uploaded?

No — and for renaming, the contents are barely even read. Changing a name is a local file-system operation the browser performs on your disk; the bytes of the file are irrelevant to it. The one exception is the EXIF date rule, which reads the first few kilobytes of each photo locally to find DateTimeOriginal, in your tab, going nowhere. The page is a static file with no API behind it — there is no server to receive an upload even if it wanted one.

What happens when two files would end up with the same name?

The preview flags it before anything happens: collisions between two renamed files, and collisions with a file that already exists, are both marked, and applying the batch is blocked until you fix the rule or exclude the file. Nothing is ever silently overwritten — a rename that would destroy a file is treated as an error, not resolved with a guess. Swaps and rotations inside the batch — two files trading names, or three passing them around in a circle — are a different case: those are not conflicts, and the tool executes them safely by parking one file on a temporary name first.

Can I undo a rename batch?

Yes — the tool records every old-name/new-name pair in the batch and one click renames them all back. The record is saved in your browser's local storage, so it survives a reload and a later visit — which also means the list of what you renamed stays in the browser until the next batch overwrites it. Honest limits remain: a name can only be restored if nothing else has taken it in the meantime, and undo refuses to touch a different folder that merely shares the recorded folder's name. Only the latest batch is kept, so undo is a reaction to the last run, not an archive.

Does it work on an external drive or a network folder?

Anything your operating system mounts as a normal directory can be picked, so external USB drives work fine. Network shares mounted as drives generally work too, though each rename is a round trip to the share, so large batches run slower, and the undo depends on the share still being mounted. Chromium refuses to grant access to certain system directories as a safety measure, and folders synced by Dropbox or Google Drive are unproblematic — the sync client just sees ordinary renames.