We have a case to migrate SharePoint 2013 site collection to SharePoint online without using SharePoint migration tool. What are the options?
Their is no way to migrate to SharePoint online without using the migration tool (MSFT or 3rd party). Or you can manually migrate your data to Office 365 if you have documents only.
But if you dont want to spend money then use the MSFT official migration tool for free. Download and install the SharePoint Migration Tool
You can create your own tool using PowerShell. You can use server side code to read the SharePoint 2013 and the use Sharepoint online PnP to upload to the target library (with that you can preserve the metadata stored in the source on prem farm.
You can go far with such tool with even creating libraries, columns content types in the sharepoint online based on your on prem definitions. But it really is cheaper to buy off-the-shelf tool or use MS own migration tool than spend resources on building your own.
Alternatively as a no code (and really rough) solution you could map the libraries as network drives and do drag and drop between them. REF: https://bauensolutions.com/2017/01/20/how-to-map-your-sharepoint-online-library-like-a-network-drive/
You can try migrating data from SharePoint 2013 to a sharepoint online via Azure Storage.
For more information you can refer to the article below: