TL;DR: pick your method in ten seconds
- Just need numbered names? Select the files in File Explorer, press
F2, type one name, press Enter. Five seconds. - Need find-and-replace or a pattern? Install PowerToys and use PowerRename. Live preview, full regex.
- Changing extensions across a whole folder? One line of Command Prompt:
ren *.jpeg *.jpg. - Thousands of files, or logic like "prefix with the modified date"? PowerShell, with
-WhatIfon the first run. - Need the name to describe what's actually in the file? None of the above can do that. They only rearrange text that already sits in the filename. That's the job for AI renaming.
Two different jobs hide behind the phrase "batch rename", and picking the wrong tool for yours is why this eats an afternoon instead of a minute.
The first job is mechanical. Two hundred files already have decent names and you want to strip a prefix, swap .jpeg for .jpg, or number them in shooting order. Windows is good at this, and it costs nothing. You just need to know which of the four built-in routes to take.
The second job is descriptive. Your folder holds scan_0042.pdf, Document (7).docx and Screenshot 2026-04-11 143207.png, and no rule will fix those, because the information you want in the name isn't in the old name at all. It's inside the file. Every method below except the last one is powerless there, and working out which job you have will save you more time than anything else in this guide.
What follows covers all six methods on Windows 11. Everything except the PowerToys context-menu placement behaves the same way on Windows 10. You get the exact commands, the real limits of each, and a table at the end for choosing. Working on macOS instead? Read batch renaming files on Mac.
Before You Start: Turn On File Extensions
Windows hides file extensions by default, which is how people end up with invoice.pdf.pdf or a file that quietly stops opening. Fix it once:
File Explorer โ View โ Show โ tick File name extensions
On Windows 10 it sits under the View ribbon tab instead. Either way, do this before any bulk rename. If you can't see the extension, you can't tell whether a tool is about to eat it.
One habit worth building: run every new rename pattern on a copy of a dozen files first. All the methods below are fast, and three of them have no undo at all.
Method 1: File Explorer (Fastest, But Numbers Only)
The built-in multi-rename is useful, and most people never find it. Select several files, press F2, type a single name, hit Enter. Windows renames all of them.
Before DSC00417.JPG DSC00418.JPG DSC00419.JPG Select all โ F2 โ type "Berlin-Trip-2026" โ Enter After Berlin-Trip-2026 (1).JPG Berlin-Trip-2026 (2).JPG Berlin-Trip-2026 (3).JPG
Numbering follows the folder's current sort order, so sort the folder the way you want the numbering to run before you press F2. Sort by Date taken before renaming a photo batch and the sequence matches the shoot. Forget, and it matches the alphabet.
There's a related trick almost nobody uses. Press F2 on a single file, type the new name, then press Tab instead of Enter. Explorer commits the rename and jumps straight into editing the next file. For twenty files that each need a different hand-typed name, Tab-walking beats any tool.
Limits: one base name plus (n). No find-and-replace, no custom numbering, no zero-padding, no dates. That parentheses-and-space format is also awkward in URLs, terminals and scripts, and our file naming conventions guide covers what to use instead.
Undo: Ctrl+Z reverses the whole batch, as long as you do it before moving on.
Method 2: PowerToys PowerRename (The Best Free Option)
PowerRename is a module inside Microsoft PowerToys: free, open source, made by Microsoft, installable from the Microsoft Store. If you rename files on Windows more than once in a blue moon, this is the one tool worth installing.
Once it's in, select files, right-click, and choose Rename with PowerRename. (Windows 11 puts it in the main context menu; on Windows 10 it's in the standard right-click menu.) You get a two-column live preview showing the current name beside the resulting name, updating as you type. So you can try a pattern across 500 files and watch exactly what it will do before committing to anything.
What it does that File Explorer can't:
- Find and replace across every selected filename at once.
- Regular expressions, capture groups included, for anything structural.
- Enumerate items, which appends a proper counter to the results.
- Scope control: filename only, extension only, or both, plus whether folders and subfolder contents are included.
- Case transforms and whitespace tidying.
A worked regex example. You have camera files and want a readable prefix while keeping the original frame number:
Search for: ^IMG_(\d+) Replace with: Berlin-2026_$1 Options: [x] Use regular expressions
Before After
IMG_0417.JPG โ Berlin-2026_0417.JPG
IMG_0418.JPG โ Berlin-2026_0418.JPG
IMG_1102.JPG โ Berlin-2026_1102.JPGThe (\d+) captures the digits and $1 puts them back. That one pattern covers most of what people install a renaming tool for in the first place.
Limits: it still only rearranges text that already exists in the filename, plus file dates. PowerRename can't tell you that scan_0042.pdf is a March invoice from Brightline Studios, because it never opens the file.
Undo: treat a PowerRename batch as permanent. Use the preview. That's what it's there for.
Method 3: Command Prompt (One Job, Done Perfectly)
The ren command is ancient and does exactly one thing well: wildcard extension swaps across a folder.
cd /d "C:\Users\You\Pictures\Berlin" ren *.jpeg *.jpg
That's the whole use case. It's instant, it needs nothing installed, and for "this camera exported .jpeg and my workflow wants .jpg" it beats opening any GUI.
Past that, ren gets strange quickly. Its wildcards are positional rather than pattern-based, so partial-name replacements produce results most people don't expect, and it can't number files, insert dates or move anything. If your job is bigger than an extension swap, skip down to PowerShell. Same terminal window, far more predictable.
Undo: none. There is no undo in Command Prompt.
Method 4: PowerShell (Unlimited Logic, Zero Safety Net)
PowerShell is where Windows batch renaming stops having limits. The pattern is always the same: Get-ChildItem lists the files, the pipe sends them to Rename-Item, and a script block works out each new name.
Run it once with -WhatIf first. Every time. That flag prints every rename it would perform and changes nothing on disk. It's the only safety net PowerShell offers, and it costs you seven keystrokes.
Find and replace across filenames
Get-ChildItem -Filter *.jpg |
Rename-Item -NewName { $_.Name -replace 'IMG_', 'Berlin-2026_' } -WhatIfCheck the output, then re-run the same line without -WhatIf to apply it.
Sequential numbering with zero-padding
$i = 1
Get-ChildItem -Filter *.jpg | Sort-Object LastWriteTime | ForEach-Object {
Rename-Item -Path $_.FullName -NewName ("Berlin-2026_{0:D3}{1}" -f $i, $_.Extension)
$i++
}{0:D3} pads the counter to three digits, so you get 001, 002, 010, which sorts correctly in every file manager. Leave the padding out and you get 1, 2, 10 and a sort order nobody wants. Sorting by LastWriteTime first makes the numbers follow chronology rather than the alphabet.
Prefix every file with its modified date
Get-ChildItem -Filter *.pdf | ForEach-Object {
Rename-Item -Path $_.FullName -NewName ("{0:yyyy-MM-dd}_{1}" -f $_.LastWriteTime, $_.Name)
}This produces 2026-03-19_statement.pdf, which sorts chronologically forever. Two warnings. The modified date is often not the document's real date, since a PDF you downloaded today is dated today no matter what's printed on it. And running this script twice will cheerfully prefix the date twice.
Clean spaces out of filenames
Get-ChildItem | Rename-Item -NewName { $_.Name -replace ' ', '-' } -WhatIfLimits: the same ceiling as everything above. PowerShell reads filenames, dates and file properties, but not meaning. Worth knowing too that Rename-Item renames in place; it can't move files to another folder.
Undo: none, ever. Which is why -WhatIf matters.
Method 5: Dedicated Bulk Rename Utilities
Two long-standing Windows apps sit between PowerRename and writing your own scripts.
Bulk Rename Utility is the power user's answer: one window holding roughly fourteen option panels, all applied at once with a live preview. It handles almost anything rule-based, EXIF and ID3 metadata included, and it's free for personal use with a paid commercial licence. The interface is famously intimidating, and that's the real cost. It's a tool you learn, not one you pick up.
Advanced Renamer is the gentler take on the same idea. You stack named methods (Replace, then Add, then Renumber) and see the combined result before applying. It handles EXIF, GPS and ID3 tags, has a scripting mode for when the presets run out, and is also free for personal use. If you rename photos by camera metadata often, it's usually the better pick of the two.
Limits: unchanged. Both are excellent at applying rules to names and metadata, and neither reads what a document says. A folder of identically-named scans defeats both.
Method 6: AI Renaming, When the Name Isn't in the Filename
Here's the case none of the previous five can touch:
scan_0042.pdf Document (7).docx Screenshot 2026-04-11 143207.png WhatsApp Image 2026-04-02 at 10.14.55.jpeg
No rule, regex or script turns those into useful names, because the useful information was never in the filename. It's in the invoice number on page one, in the heading of the document, in whatever the screenshot happens to show. A regex can only rearrange what you hand it.
That gap is what FilesDesk fills. It opens each file, reads the content (text in documents, vision for images and scans) and writes a name that describes it. The same folder comes out like this:
| Before | After |
|---|---|
scan_0042.pdf | 2026-03-19_brightline_invoice-4471.pdf |
Document (7).docx | 2026-02-04_acme_proposal-website-redesign.docx |
Screenshot 2026-04-11 143207.png | 2026-04-11_stripe-dashboard-payout-failed.png |
WhatsApp Image 2026-04-02...jpeg | 2026-04-02_warehouse-damaged-pallet.jpeg |
You control the format with a naming template, so files come out matching the convention you already use rather than whatever the model felt like writing. And because renaming a thousand files is the operation you'd most regret getting wrong, every batch is logged in processing history. That's the undo PowerShell and PowerRename never gave you.
Two questions usually come next. Where does the file content go? If the files are sensitive, whether that's client contracts, medical records or anything under NDA, you can run the whole thing locally with Ollama and nothing leaves your machine. And what about next month's pile? Point a Watch Folder at Downloads or your scanner output, and new files get named on arrival, so the backlog stops rebuilding itself.
Rename by What's Inside the File
FilesDesk reads your documents, scans and screenshots with AI, then renames thousands of files to your own template in one pass. Windows 10 and 11. Free to try, no card required.
Download FilesDesk FreeWhich Method Should You Use?
| Method | Best for | Find & replace | Reads content | Undo | Cost |
|---|---|---|---|---|---|
| File Explorer | Quick numbered sequence | No | No | Ctrl+Z | Built in |
| PowerRename | Patterns and regex, with preview | Yes | No | No | Free |
| Command Prompt | Extension swaps only | Limited | No | No | Built in |
| PowerShell | Thousands of files, custom logic | Yes | No | -WhatIf only | Built in |
| Bulk renamers | EXIF, ID3, stacked rules | Yes | No | Varies | Free personal |
| FilesDesk (AI) | Names that describe the file | Yes | Yes | History log | Free tier |
Short version: if a rule can express the rename you want, use the free built-in tool. File Explorer for numbering, PowerRename for patterns, PowerShell for scale. There's no reason to pay for any of that.
The moment you catch yourself opening files to work out what to call them, rule-based tools have stopped helping, because the bottleneck is no longer applying the name. It's deciding it. That's the one place AI renaming earns its keep, and it also happens to be the case that costs the most hours.
Step-by-Step: Batch Rename by Content on Windows
- Download and install FilesDesk for Windows 10 or 11 from the download page.
- Pick your AI mode. Cloud for speed, or local Ollama if the files shouldn't leave the machine.
- Drag in a folder, or a mixed selection of PDFs, Word files, images and scans.
- Choose a naming template, such as
{date}_{client}_{document-type}, so results match your existing convention. - Review the proposed names in the preview list and edit anything you disagree with.
- Apply. The batch runs, and stays in processing history if you need to walk it back.
Three Things That Bite People on Windows
The 260-character path limit. Windows caps a full path at 260 characters by default, and it's the path, not the filename. Descriptive names inside a deeply nested folder tree hit that wall, and renaming fails in confusing ways. The fix is usually a shallower folder structure rather than shorter names, which is what folder structure best practices gets into.
Reserved characters and names. \ / : * ? " < > | are illegal in Windows filenames, and CON, PRN, AUX, NUL, COM1 to COM9 and LPT1 to LPT9 are reserved outright. Trailing spaces and periods get stripped silently too. Cleaning up a messy batch? Our free filename sanitizer strips unsafe characters in the browser.
Renaming inside a synced folder. Bulk-renaming a thousand files inside OneDrive, Dropbox or Google Drive queues a thousand sync operations, and on a shared folder every collaborator watches every file vanish and reappear. Pause syncing, run the batch, let it re-sync once, then resume.
Frequently Asked Questions
How do I rename multiple files at once in Windows 11?
Select them in File Explorer, press F2, type one base name, and press Enter. Windows renames all of them to that name plus a number in parentheses. It's the fastest built-in method, but numbered names are all it produces. For find-and-replace you need PowerRename, and for names based on file content you need an AI tool.
Does Windows 11 have a built-in bulk rename tool?
Only partly. File Explorer numbers a selection and ren swaps extensions, but neither does find-and-replace, regex, or padded numbering. Microsoft's actual answer to that gap is PowerRename, which ships in the free PowerToys package rather than in Windows itself.
How do I batch rename files with PowerShell?
Pipe Get-ChildItem into Rename-Item with a script block. For example: Get-ChildItem -Filter *.jpg | Rename-Item -NewName { $_.Name -replace 'IMG_', 'Berlin_' }. Add -WhatIf on the first run to preview every change without touching the disk, then remove it. There's no undo, so the dry run is your safety net.
Can Windows rename files based on their content?
No. Every built-in method and every classic bulk renamer works only on text already in the filename, plus metadata like dates and EXIF tags. None of them open a PDF to find the invoice number or look at a screenshot to see what it shows. That requires an AI tool that reads the file and generates a name from it.
How do I undo a batch rename in Windows 11?
In File Explorer, Ctrl+Z immediately reverses the batch. Command Prompt and PowerShell renames cannot be undone at all. Dedicated tools vary, and some keep an undo log of past batches, so check whether yours does before running a large job.
What's the fastest way to rename thousands of files in Windows?
For a mechanical change, PowerShell. It handles thousands of files in seconds with no interface to click. For names that must describe each file individually, no manual method scales, because the work is in deciding the name rather than applying it. That's the point where AI renaming saves hours instead of minutes.
Is PowerToys PowerRename safe to install?
Yes. PowerToys is built by Microsoft, developed in the open on GitHub, and distributed through the Microsoft Store. Outside of Windows itself, it's about as close to a first-party utility as you can get.
The Bottom Line
Windows 11 hands you more free renaming power than most people ever use. F2 in File Explorer covers quick numbering, PowerRename covers patterns with a live preview, and PowerShell covers anything rule-shaped at any scale. For mechanical work that's the entire answer, and you don't need to buy a thing.
What none of them do is look inside the file. So the practical rule is simple. If you can describe the rename as a rule, use the built-in tools. If you'd have to open each file to know what to call it, that's the job worth handing to AI, and it's usually the folder that's been sitting there since last year.
Further reading: the best AI file renamers for Windows, tested, file naming conventions for deciding what the names should look like in the first place, and batch renaming on Mac if you work across both platforms.