{"id":8359,"date":"2024-02-13T07:36:51","date_gmt":"2024-02-13T07:36:51","guid":{"rendered":"https:\/\/www.vyapinsoftware.com\/blog\/?p=8359"},"modified":"2026-07-08T14:39:02","modified_gmt":"2026-07-08T14:39:02","slug":"using-sharepoint-migration-tools-to-migrate-from-sharepoint-on-prem-to-sharepoint-online","status":"publish","type":"post","link":"https:\/\/www.vyapinsoftware.com\/blog\/using-sharepoint-migration-tools-to-migrate-from-sharepoint-on-prem-to-sharepoint-online","title":{"rendered":"SharePoint On-Prem to SharePoint Online Migration: 7 Real Challenges(and How to Plan Around Them in 2026)"},"content":{"rendered":"\n<p>SharePoint Server 2019 reaches end of extended support in October 2026. That deadline<br>has moved a lot of migrations from \u201csomeday\u201d to \u201cthis year,\u201d and it\u2019s also why third-party<br>migration tools have become the default rather than a nice-to-have \u2014 most environments<br>carry more customization than a straight lift-and-shift can handle cleanly.<\/p>\n\n\n\n<p>The appeal of SharePoint Online is real: tighter Microsoft 365 integration, and features like<br>Copilot, AI-powered search, and Loop components that only exist online, not on-prem. But<br>the migration itself still trips up teams in the same handful of places. Here\u2019s what actually<br>causes delays, and what to do about each one.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Deprecated templates need rework before you migrate<br><\/strong>Some list and site templates from older SharePoint versions no longer exist in SharePoint<br>Online. If your source sites use them, plan for rework on both ends \u2014 you can\u2019t just point a<br>migration tool at them and expect a clean copy. Run a discovery pass first (Microsoft\u2019s<br>SharePoint Migration Assessment Tool, or a third-party scan) so you know which sites<br>need attention before migration day, not during it.<\/li>\n<\/ol>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li><strong>Identity mapping: on-prem AD to Microsoft Entra ID<br><\/strong>Your on-prem users live in Active Directory; SharePoint Online uses Microsoft Entra ID (the<br>current name for what was Azure AD). Don\u2019t assume every account maps over cleanly.<br>Former employees, service accounts, and external vendor accounts are the usual gaps.<br>Before migrating, identify accounts with no Entra ID match and decide up front whether to<br>create new accounts, map them to a placeholder, or drop the permission entirely \u2014 then<br>validate the mapping with a small test migration before rolling it out broadly.<\/li>\n<\/ol>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li><strong>Workflows don\u2019t move as-is<br><\/strong>Built-in workflow histories live in a different list structure in SharePoint Online, so carrying<br>them forward takes deliberate mapping, not a straight copy. It\u2019s worse for SharePoint<br>Designer workflows specifically \u2014 they aren\u2019t supported in SharePoint Online at all. The<br>realistic path is rebuilding them in Power Automate, and for custom web parts, rebuilding<br>as SPFx components. Treat this as a project within the project: inventory what you have,<br>and decide per-workflow whether it\u2019s worth rebuilding or worth retiring.<\/li>\n<\/ol>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li><strong>Look and feel rarely survives migration untouched<br><\/strong>Custom master pages and page layouts aren\u2019t supported in modern SharePoint. If your on-<br>prem sites have heavy branding or custom page structures, expect to rebuild the look in<br>modern SharePoint\u2019s design system rather than replicate it exactly. Decide early which<br>customizations are worth rebuilding and which have outlived their business value \u2014 not<br>everything from your on-prem environment deserves a second life online.<\/li>\n<\/ol>\n\n\n\n<ol class=\"wp-block-list\" start=\"5\">\n<li><strong>MFA adds friction during tenant-to-tenant moves<br><\/strong>Multi-factor authentication complicates migrations that move data between tenants. Plan<br>authentication handling as its own step, particularly if your migration tool needs persistent<br>access across a long-running job \u2014 MFA prompts mid-migration can interrupt automated<br>transfers if this isn\u2019t accounted for upfront.<\/li>\n<\/ol>\n\n\n\n<ol class=\"wp-block-list\" start=\"6\">\n<li><strong>Throttling will slow you down if you don\u2019t plan for it<br><\/strong>Moving large volumes of content \u2014 especially tenant-to-tenant or within the same tenant<br>\u2014 can trigger SharePoint Online\u2019s throttling limits. Before migrating, clean up redundant,<br>outdated, and trivial (ROT) content so you\u2019re not wasting throttled bandwidth moving data<br>nobody needs. Migrate in waves rather than all at once, and build in buffer time; a good<br>migration plan assumes throttling will happen rather than treating it as a surprise.<\/li>\n<\/ol>\n\n\n\n<ol class=\"wp-block-list\" start=\"7\">\n<li><strong>Tool limitations you\u2019ll actually hit<br><\/strong>Not all migration tools are equal, and free tools come with hard limits worth knowing<br>before you commit to one:\n\n<ul class=\"wp-block-list\">\n<li>Microsoft\u2019s free tool doesn\u2019t support non-Microsoft sources (Google Drive, Box,<br>Dropbox) and can\u2019t do tenant-to-tenant migrations at all.<\/li>\n\n\n\n<li>Error reporting on failed items is often vague \u2014 you\u2019ll know something failed, not<br>always why.<\/li>\n\n\n\n<li>Long file paths (over ~400 characters) and files with restricted characters can fail<br>silently instead of throwing a clear error.<\/li>\n\n\n\n<li>File size limits have grown \u2014 SharePoint Online now supports files up to 250 GB, up<br>from 15 GB \u2014 but very large files still need special handling and longer transfer<br>windows regardless of the new ceiling.<\/li>\n<\/ul>\n\n\n\n<p>For straightforward migrations, the free tool is often enough. For hub-spoke architectures,<br>complex permissions, or tenant-to-tenant consolidation, paid tools (Vyapin, ShareGate,<br>AvePoint, Quest\/Metalogix) provide better permission preservation, pre-migration<br>reporting, and support for scenarios the free tool simply can\u2019t do.<\/p>\n<\/li>\n<\/ol>\n\n\n\n<p><strong>After migration: don\u2019t skip validation<\/strong><br>Once each migration wave completes, confirm: &#8211; Source and target item counts match &#8211; File<br>sizes match &#8211; Metadata transferred correctly &#8211; Permissions apply as expected &#8211; Version<br>history is preserved<\/p>\n\n\n\n<p>Set up URL redirects from old on-prem links to the new SharePoint Online locations \u2014<br>users will have bookmarks and shared links pointing to the old URLs for a long time after<br>migration.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote snippet-blog is-layout-flow wp-block-quote-is-layout-flow\">\n<p>Facing one of these challenges right now? <a href=\"https:\/\/www.vyapinsoftware.com\/products\/sharepoint-migration\/dockit\/sharepoint-migration-tools\" title=\"DocKit Migrator\"><strong>DocKit Migrator<\/strong><\/a> is built to handle template<br>conversion, permission mapping, and throttled transfers without the manual cleanup work<br>described above.<\/p>\n<\/blockquote>\n\n<!-- wp:html--><style>.snippet-blog {\n    background-color: #e5e5e5;\n    border-left: 5px solid #1e73be !important;\n    border-radius: 12px;\n    padding: 10px 20px !important;\n    max-width: 900px;\n    margin: 10px auto;\n    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);\n}<\/style><!-- \/wp:post-content -->","protected":false},"excerpt":{"rendered":"<p>SharePoint Server 2019 reaches end of extended support in October 2026. That deadlinehas moved a lot of migrations from \u201csomeday\u201d to \u201cthis year,\u201d and it\u2019s also why third-partymigration tools have become the default rather than a nice-to-have \u2014 most environmentscarry more customization than a straight lift-and-shift can handle cleanly. The appeal of SharePoint Online is [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[15,17],"tags":[260,262,261,66],"class_list":["post-8359","post","type-post","status-publish","format-standard","hentry","category-sharepoint-migration","category-sharepoint-to-sharepoint-migration","tag-moving-to-microsoft365","tag-sharepoint-migration-tool","tag-sharepoint-on-prem-to-sharepoint-online","tag-sharepoint-online-migration"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.vyapinsoftware.com\/blog\/wp-json\/wp\/v2\/posts\/8359","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.vyapinsoftware.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.vyapinsoftware.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.vyapinsoftware.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.vyapinsoftware.com\/blog\/wp-json\/wp\/v2\/comments?post=8359"}],"version-history":[{"count":4,"href":"https:\/\/www.vyapinsoftware.com\/blog\/wp-json\/wp\/v2\/posts\/8359\/revisions"}],"predecessor-version":[{"id":8402,"href":"https:\/\/www.vyapinsoftware.com\/blog\/wp-json\/wp\/v2\/posts\/8359\/revisions\/8402"}],"wp:attachment":[{"href":"https:\/\/www.vyapinsoftware.com\/blog\/wp-json\/wp\/v2\/media?parent=8359"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.vyapinsoftware.com\/blog\/wp-json\/wp\/v2\/categories?post=8359"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.vyapinsoftware.com\/blog\/wp-json\/wp\/v2\/tags?post=8359"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}