Will Holland is a Senior Software Engineer at ThreeWill. Will has proven to be adept at understanding a client’s needs and matching them with the appropriate solution. Recently he’s developed a passion for working with .NET, MVC, and cloud-based solutions such as Microsoft Azure and Microsoft 365.
I’ve been involved in several migrations over the past few years. During that time I’ve evaluated and used a number of different tools and methods. Most recently, my migration projects have targeted SharePoint Online and using a third-party tool that is practically mandatory. I’ve written a lot about migrations in the past, but I’ve never really discussed the tools I use. Today, I am correcting that by providing an honest review of a tool I’ve really enjoyed using lately – ShareGate.
First, let’s talk about the top 3 things I think are great about ShareGate.
ShareGate is extremely user-friendly. I’ve spent hours attempting to train clients and coworkers on how to use some of the other migration tools I’ve used. ShareGate’s UI is fairly intuitive, setting up a migration takes minutes, and the options you’re presented with are greatly simplified. All in all, I could explain how to use this tool for a migration, to a client, in about 15 minutes.
ShareGate comes with around 20 built-in reports that it can generate and offers the ability to create your own custom report, although I’ve never needed to create my own. The “OOB” reports, which include a Site Collection Report, Unused Site Report, and Checked Out Documents report have all been extremely useful for my projects.
The Site Collection Report details each site collection in your farm with additional data such as size, number of sites, last modified dates, etc. It’s not as detailed as the report generated by the SMAT tool offered by Microsoft, but it’s right there at your fingertips and gets you a great overview of your farm.
One of the best things about the ShareGate tool, at least for someone like me, is how precise the error messages usually are. I don’t like seeing errors, obviously, but they happen. ShareGate does a great job at stating what the error is, and even provides a link to a help article to troubleshoot the issue. Most of the other tools I’ve used have had such vague and generic error messages that not even their own support team could tell me what they meant.
ShareGate isn’t a perfect tool (is there such a thing?) . Here are three things that I wish were better.
While in the middle of a migration, you have access to a “progress” window of sorts. It shows the activities that ShareGate is currently working on, tasks it’s completed, etc.
One problem I have with it is that it requires me to manually refresh the screen anytime something new gets added. It becomes tedious, and I don’t understand why the log doesn’t display things in real time.
Another issue I have is that the statuses it assigns some tasks don’t always make sense to me. It will sometimes show an item that it successfully migrated as an error or warning because the tool, basically, had to retry. It makes tracking down errors I care about a little noisier.
Up until a recent update, the only way that you could have two migrations going at the same time, on the same machine, as if you were using the PowerShell cmdlets that came with ShareGate. Fortunately, you can now have multiple migrations running in parallel using the same instance of ShareGate, which certainly makes my life easier.
Still, and perhaps this is more of a “monitoring” issue, I can view the status of all my migration tasks (again, requiring me to manually refresh), or I can view the details of a specific migration, but I can’t do both at the same time. I would definitely appreciate the ability to monitor the details of some migrations while seeing the “big picture” of all ongoing migrations at the same time.
The flipside of the simplified options is that you lose some flexibility. If you want to run an incremental migration on an entire site collection, but you want to exclude certain lists? Unfortunately, no way to do that except by doing list level migrations. Want to do that incremental only on list items that have been modified since a certain date, like the last time you did a migration? Unfortunately, ShareGate is going to compare every list item on your source to the target.
Overall, ShareGate is a great tool and has become my default recommendation for straight-forward migrations, though it certainly has room for improvement. It’s extremely well priced, and their licensing plan is “per user” as opposed to licensing a certain amount of data to be migrated. That’s perfect for me, as it allows me to test out migrations to throwaway destinations without incurring additional costs.
The ShareGate support team also deserves a gold star. Anytime I’ve had the need to reach out to them, they are extremely quick to respond and have, so far, helped me sort out whatever issue I was having.
One thing I have yet to test out was their PowerShell capabilities. With other tools, I’ve built extremely complicated automated migration scripts. I’ve yet to have a need for it, but I did take a look at the ShareGate PowerShell cmdlets and thought that they might be a little restrictive for how I might want to use them.
ShareGate is a powerful, easy to use migration tool that is extremely affordable. If you’re looking at migration tools, be sure that you grab a free trial from ShareGate and give it a test drive.