I want to migrate local folder which has upto 25GB of data (including documents and media files). Is there any free tool/script which I can use to upload data into SharePoint document library?
You should be able to copy them using Windows Explorer as you can open SharePoint Document Library in Windows Explorer from Ribbon. Copying all 25GB in one go might be problematic, so copy few folders at a time.
I suggest you to use One Drive for Business to sync all your local files to SharePoint, i hope it will take over night to sync all 25GB data(Based on the internet speed) and you can easily track the process by comparing the folder size or One Drive logs.
By default, the default document size threshold is set to 250MB, but can be changed to support the maximum boundary of 2GB. You can configure it from Central Admin :
25GB data is so large, it is better that you upload the document in batch.