The file and folder names SharePoint won't accept
A file that is perfectly valid on a Windows file share can be flatly rejected by SharePoint. On a migration of any size you will meet dozens or thousands of them, and if they are not dealt with, they simply do not arrive.
This is one of the most common reasons a migration ends up with files reported as missing. Most of the rules are enforced by SharePoint itself, not by the migration tool. Every product that moves data into SharePoint or OneDrive has to work within the same restrictions. The difference is how well it detects, reports and recovers from them.
What SharePoint rejects
The rules fall into a few groups.
- Invalid characters. These are not allowed anywhere in a file or folder name:
" * : < > ? / \ | - Leading or trailing spaces. A name cannot start or end with a space.
- Reserved names.
.lock,CON,PRN,AUX,NUL,COM0toCOM9,LPT0toLPT9,_vti_anddesktop.iniare all blocked, as is any name that starts with~$. A folder calledFormsat the root of a document library is reserved too. #and%. These characters were originally blocked by SharePoint. Modern tenants can allow them, but support depends on tenant configuration, so migration software cannot assume they will always be accepted.
The one that catches everyone: path length
The rule that causes the most trouble is not about characters at all. The complete folder path and file name together must not exceed 400 decoded characters. A single folder or file name on its own is limited to 255 characters.
Four hundred characters sounds generous until you look at a real file share. Six folders deep, each with descriptive names such as 2024 Client Projects - Final Signed Versions, followed by a long document name, and suddenly the limit has been exceeded. Nobody counts the full path on a file server because the file server does not care. SharePoint does.
Every name checked before a file moves
A Preview scan runs against your actual source data and flags every invalid character, reserved name and path length problem before a single file is copied, so you see exactly what will be renamed or skipped, and why.
Why it only bites during a migration
Every one of these names can exist happily on the source system. They may have worked for years, so nobody has ever had a reason to tidy them up. The problem only appears when the file is copied into SharePoint.
This is not unique to Liscaragh Migrate. Every migration product copying data into SharePoint must deal with exactly the same restrictions. The difference is simply how well it detects problems, handles them and tells you what happened afterwards.
Multiply a handful of edge cases across hundreds of thousands of files and you end up with a significant number of rejected items. A migration that quietly skips them can appear complete when it is not.
What good handling looks like
A migration should not stop because it encounters a bad name, and it should not silently change names without telling you. Good migration software detects the problem, makes only the minimum change needed to satisfy SharePoint's rules, and records every change so you know exactly what happened.
Path length issues should be identified before the copy starts, not discovered halfway through.
This is how Liscaragh Migrate handles it. It detects names SharePoint will reject, renames only what is necessary, and records every rename, skip and reason in the migration report, giving you a complete audit trail. A Preview analyses the migration before any data is copied, showing every file that would be renamed, skipped or rejected before the first upload begins, so there are no surprises afterwards. The detail is on the files and folders guide.
Before you migrate
- Flatten deep folder structures where you can. Removing even one or two nested levels can recover a surprising amount of path length.
- Do not assume a file is suitable just because it opens today. A file server does not enforce SharePoint's naming rules, so it will never warn you.
- Run a Preview first and review the rename and skip list. It is far easier to fix problems before the migration than afterwards.
- Decide whether a renamed file could affect anything downstream, such as hard-coded links, scripts or applications that expect an exact file name.
None of these issues are difficult once you know they are coming. Problems arise when a migration treats them as someone else's responsibility, because SharePoint certainly will not.