I will always go for self hosted first.
Only if the projects scales I will consider a third party. Having a dedicated static server is not rocket science nor is it high maintenance.
If we scale we can switch to a third party. However if the projects aims to be big and it has it's target audience across the globe, I will go for a CDN or the cloud.