Messy filenames are the silent productivity killer of any digital library. IMG_2024-04-15_14-22-03_001.jpg might be readable, but what about DSC_0001.JPG, PXL_20240101_120000.jpg, and Untitled-1.jpg all in the same folder? They tell you nothing about what’s actually in the file.
Bulk Rename fixes that. It lets you open any folder, select the files you want to rename, and apply one of 14 naming patterns to the entire batch—with a live preview that shows exactly what will happen before you commit. Add today’s date as a prefix. Convert a messy batch to a clean sequential series. Add timestamps. Replace original names with your own custom base name. All in your browser, with zero installation, and with the same privacy guarantees as every other Sakarto tool.
If you’ve ever spent ten minutes manually renaming files one by one, Bulk Rename is the tool that will save you hours.
What makes Bulk Rename different from other Sakarto tools?
Sakarto’s toolkit includes duplicate finders, Media Viewer, Bulk Delete, and Bulk Move. Each serves a different purpose:
| Tool | Purpose | Can it modify filenames? | What it does |
|---|---|---|---|
| Find Duplicate Images & Videos | Analysis | ✅ Yes (via Rename) | Finds visually similar files using 7 algorithms |
| Media Viewer | Browsing | ❌ No (read-only) | Displays and organizes files visually—no modifications allowed |
| Bulk Delete | Action | ❌ No (deletes files) | Permanently removes selected files |
| Bulk Move | Action | ❌ No (moves files) | Moves selected files to a subfolder |
| Bulk Rename | Action | ✅ Yes (filename only) | Renames multiple files with patterns and preview |
The key insight: Bulk Rename changes filenames only—it never touches file content. The file’s data, creation date, and modification date remain unchanged. And because renaming uses the native FileSystemFileHandle.move() method, it’s instant regardless of file size.
How Bulk Rename works: a technical overview
Let’s walk through what happens when you use Bulk Rename.
Step 1: Choose file types and select a folder
The welcome screen has six file type checkboxes: Images, Videos, Audio, Documents, Archives, and Other. Only files matching enabled types are loaded. Your selections are saved to localStorage so they persist across sessions.
When you click 📂 Select Folder, the browser’s File System Access API reads the folder recursively. Every file in the folder and its subfolders is collected.
Step 2: Render cards in batches of 50
Cards are built synchronously and appended to the DOM in batches of 50, yielding to the event loop between batches. The progress bar shows how far along the scan is.
Step 3: Add files to the Rename Queue
Select files and click ✏️ Rename in the toolbar. With Queue Mode on (the default), files are added to the Rename Queue tab rather than renamed immediately. A purple “✏️ RENAME” badge appears on each staged card in the main grid.
Step 4: Choose a pattern and preview
In the Rename Queue tab, choose a naming pattern from the dropdown, optionally enter a custom base name, then click 👁️ Preview Renames. A scrollable list shows every old name → new name mapping. Conflicts (duplicate names or clashes with existing files) are highlighted in red. The ✏️ Rename All Files button only appears if the preview shows no conflicts.
Step 5: Execute the rename
Click ✏️ Rename All Files. A confirmation warning appears (first time) explaining the operation. Files are renamed one by one using FileSystemFileHandle.move(). Successfully renamed files show their new name in green in the main grid. Failures are reported in a toast.
The 14 rename patterns—explained
The pattern dropdown offers 14 options. All date and timestamp values use the current local time at the moment you click Preview Renames—all files in the same preview batch get the same date, but timestamps include seconds so simultaneous files can still differ if you use the per-file timestamp pattern.
| Pattern | Example output | Best for |
|---|---|---|
| Custom Name + Numbers | photo_001.jpg | Replacing chaotic names with a clean series |
| Date Prefix ISO | 2026-04-15_photo.jpg | Sortable date prefix, international standard |
| Date Suffix ISO | photo_2026-04-15.jpg | Keeping original name readable, adding date at end |
| Date Prefix EU | 15-04-2026_photo.jpg | European date convention (DD-MM-YYYY) |
| Date Suffix EU | photo_15-04-2026.jpg | European date at end of filename |
| Date Prefix US | 04-15-2026_photo.jpg | US date convention (MM-DD-YYYY) |
| Date Suffix US | photo_04-15-2026.jpg | US date at end of filename |
| Date Compact Prefix | 20260415_photo.jpg | Compact sortable date, no separators |
| Date Compact Suffix | photo_20260415.jpg | Compact date at end, filename stays first |
| Timestamp | 20260415_143022_photo.jpg | Unique per-second timestamp for processed files |
| Timestamp Readable | 2026-04-15_14-30-22_photo.jpg | Readable timestamp with separators |
| Number Prefix | (1)photo.jpg, (2)photo.jpg | Adding sequential numbers before existing names |
| Number Suffix | photo(1).jpg, photo(2).jpg | Adding sequential numbers after existing names |
| Sequential | export_001.jpg, export_002.jpg | Zero-padded sequence with a custom base name |
Tip: Zero-padding scales automatically. The Sequential and Custom Name + Numbers patterns pad numbers to the width of the total count. For 10–99 files: two digits (file_01). For 100–999: three digits (file_001). This ensures correct alphabetical sort order.
The “Replace Original Filename” toggle
Most date and timestamp patterns incorporate the original filename. The Replace original filename with custom name checkbox changes this behaviour so the custom base name replaces the original filename in the pattern, rather than sitting alongside it.
| Pattern | Toggle OFF (default) | Toggle ON |
|---|---|---|
| Date Prefix ISO + custom name “export” | 2026-04-15_photo.jpg | 2026-04-15_export.jpg |
| Date Suffix ISO + custom name “scan” | photo_2026-04-15.jpg | scan_2026-04-15.jpg |
| Timestamp + custom name “raw” | 20260415_143022_photo.jpg | 20260415_143022_raw.jpg |
Important: When Replace is on with date/timestamp patterns, every file in the batch gets the same base name + the same date. This will produce conflicts unless you combine it with Sequential or Custom + Numbers, or the files have different extensions. The Preview step will catch this for you.
Conflict detection: how it works
The Preview step checks for two types of conflicts before allowing execution. Both block the Rename All Files button from appearing.
Duplicate names within the batch
Two or more files in the queue would receive the same new name. Marked ⚠️ DUPLICATE in red. Most often caused by using a date pattern on files that share the same extension. Fix: add a sequential element (use Sequential or Custom + Numbers pattern) or switch to a timestamp pattern.
Conflict with existing file in the folder
A new name matches a file already in the scanned directory that is not part of the rename queue. Marked ⚠️ FILE EXISTS - WILL OVERWRITE! in red. Fix: change the base name, add a distinguishing element, or remove the conflicting file first.
Note: Files being renamed to each other’s names don’t conflict. The conflict check only blocks renames where the new name matches a file that is not in the rename batch. Circular renames within the batch (e.g., A → B and B → A) are checked by the OS at execution time.
Step-by-step: Using Bulk Rename
Step 1: Choose your file types
On the welcome screen, check or uncheck the file type boxes. If you only want to rename images, uncheck everything else. Your selection is remembered next time.
Step 2: Select a folder
Click 📂 Select Folder. A native folder picker opens (Chrome/Edge). Or drag and drop a folder directly onto the page. Files are read recursively including all subfolders.
Step 3: Select files to rename
Files appear as cards in a grid. Use any of these selection methods:
- Click a card to select it (blue border)
- Click & drag on empty space to box-select multiple cards at once
- Ctrl + drag to add to an existing selection without clearing it
- Ctrl+Click (Cmd+Click on Mac) to add a card to the compare list (purple border)
- Right-click any card for the context menu (Copy / Rename / Compare)
Step 4: Add to Rename Queue
Click ✏️ Rename in the toolbar. With Queue Mode on (default), selected files are added to the Rename Queue tab. A purple “✏️ RENAME” badge appears on each staged card so you can see at a glance what’s queued.
Switch to the Rename Queue tab in the sidebar and click 🔍 to preview any file before committing.
Step 5: Choose a pattern and options
In the Rename Queue actions panel:
- Select a pattern from the dropdown (see the full list in the Patterns section above)
- Custom Name — type a base name (appears when pattern uses it, or when “Replace filename” is checked)
- Replace original filename with custom name — check to use your custom name instead of the original filename in date/timestamp patterns
- Keep original file extensions — checked by default; uncheck only if you want to strip extensions (unusual)
Step 6: Preview the renames
Click 👁️ Preview Renames. A scrollable panel shows every original → new name mapping.
- Clean mapping — all names unique and no conflicts: the Rename All Files button appears
- Red + ⚠️ DUPLICATE — two or more files in the queue would get the same new name. Adjust the pattern.
- Red + ⚠️ FILE EXISTS - WILL OVERWRITE! — a new name conflicts with a file already in the folder (not in the queue). Adjust the pattern or base name.
Important: If you change any option after previewing, the preview hides and the Execute button disappears. You must click Preview again to regenerate a clean mapping before you can execute.
Step 7: Execute the rename
Click ✏️ Rename All Files. A first-time confirmation dialog explains the operation. Files are renamed one by one using FileSystemFileHandle.move(). Successfully renamed files show their new name in green in the main grid. Failures are reported in a toast.
Step 8: Single-file rename (without Queue Mode)
Disable Queue Mode or right-click a single card and choose ✏️ Rename. A small dialog opens asking for a new base name. If multiple files are selected, the tool appends _1, _2, etc. automatically. This path bypasses the pattern system—use Queue Mode for any pattern-based bulk rename.
Bulk Rename vs. the other tools: when to use which
| Bulk Rename | Bulk Move | Bulk Delete | |
|---|---|---|---|
| What it does | Changes filenames only | Moves files to a subfolder | Permanently removes files |
| Affects | Filename only | File location | File existence |
| Reversible? | ✅ Yes (rename back) | ✅ Yes (move back) | ❌ No |
| Speed | Instant (OS rename) | Depends on file size (copy-then-delete) | Instant (OS remove) |
| Best for | Standardizing filenames | Organizing into folders | Removing unwanted files |
Recommendation: Use Bulk Rename first to give files meaningful names. Then use Bulk Move to sort them into folders. Only use Bulk Delete when you’re absolutely certain.
Privacy: your files never leave your device
Like every Sakarto tool, Bulk Rename runs entirely in your browser:
- Zero network activity after page load. All rename operations use local File System Access API calls. Open DevTools → Network tab during a rename: zero outbound requests.
- No file content is read during rename.
FileSystemFileHandle.move()changes the filename in the directory without reading file data. Only thumbnails and audio players read file content, and only in your browser. - Folder access is scoped and session-only. Permission covers only the folder you selected, lasts only while the tab is open, and is revocable from browser site settings at any time.
- Only preferences are saved. File type checkboxes and Queue Mode preference are stored in
localStorage. No filenames, paths, or rename history are ever saved or transmitted.
Frequently asked questions (Bulk Rename specific)
“Can I undo a rename?”
Not automatically—there is no undo button. However, the grid shows both the old name (struck through) and the new name (in green) after execution, so you have a visual record of what changed. For a full list, use Download List before renaming. To reverse a rename, use the same tool to rename the files back to their original names.
”Why does the ‘Rename All Files’ button disappear after I change a setting?”
Any change to the pattern, base name, replace-filename toggle, or extension option invalidates the previously generated mapping. The Execute button hides to prevent you from running a stale preview. Simply click Preview Renames again after making your changes and the button will reappear if the new preview is conflict-free.
”What does ‘FILE EXISTS - WILL OVERWRITE!’ mean in the preview?”
A proposed new name matches a file already in the folder that is not part of your rename queue. Executing would silently overwrite the data in the handle—the conflict check prevents this. Change the base name or pattern so the new name is unique, then preview again.
”All my files got the same date in the date pattern. How do I make them unique?”
Date patterns stamp all files with the same date (the date at preview time). If your files all share the same extension, this produces duplicate names and the Execute button is blocked. Solutions: (1) use the Timestamp pattern which includes hours, minutes, and seconds—but note if files are processed in the same second they still match; (2) use Sequential or Custom + Numbers instead, which always produces unique names.
”Why doesn’t the rename button work in Firefox or Safari?”
The FileSystemFileHandle.move() method is part of the File System Access API, which is only supported in Chrome 86+ and Edge 86+. Firefox and Safari do not support it. In those browsers the folder picker and rename features are unavailable. You can still export a file list via Download List and use your OS file manager or a dedicated renamer app.
”Can I rename files to include the original filename AND a date?”
Yes—use any Date Prefix or Date Suffix pattern with the Replace original filename checkbox unchecked (the default). The original filename is preserved in the pattern and the date is added around it. For example, Date Prefix ISO produces 2026-04-15_original-name.jpg.
”What happens to the file extension?”
By default the Keep original file extensions checkbox is checked, so extensions are always preserved. If you uncheck it, the extension is stripped from the output filename entirely. This is almost never what you want for media files—only uncheck it if you have a specific reason to remove extensions.
”I accidentally closed the Rename Queue. Did I lose my selection?”
No—switching back to the Rename Queue tab restores it. The queue and all rename mappings are held in memory for the lifetime of the browser tab. If you reload the page or navigate away, the queue is cleared.
”Some files failed to rename. What does that mean?”
A file can fail to rename if: it is currently open in another application (file lock), a name conflict was created between the pre-check and execution (race condition from another process), or you lack OS-level write permissions. The toast reports how many succeeded and failed. Failed files remain in the queue for retry.
Final thoughts
Bulk Rename is the most sophisticated tool in Sakarto’s organizer suite. It’s not just about renaming files—it’s about giving you control over your filenames with previews, conflict detection, and 14 different patterns to suit any naming convention.
It’s particularly effective for:
- Standardizing camera exports. Convert
IMG_001,DSC_0001,PXL_20240101_120000to a consistentYYYY-MM-DD_photo_001format. - Adding dates to downloads. Give downloaded files a date prefix so you know when you got them.
- Creating sequential series. Rename a batch to
project_001,project_002for a clean presentation. - Cleaning up messy filenames. Remove random characters, standardise case, and add consistent prefixes.
And because renaming is instant and doesn’t touch file content, it’s the safest file operation in Sakarto’s toolkit—no data is ever at risk.
Bulk Rename is the tool that makes filenames work for you instead of against you.
Ready to rename files in bulk?
- Open Bulk Rename — free, browser‑based, no install
- Explore All Organize Tools — Media Viewer, Bulk Delete, and Bulk Move
- Find Duplicate Images & Videos — 7 algorithms to find similar files
