I've been able to host a Laravel app on the free tier of AWS for a year now and hasn't cost a dime (beyond other AWS fees like Route53 domain management).
Where I push the limits quickly is:
I'd recommend hosting your app on there for a month or so, get some average usage statistics, and apply those values to their pricing calculator
In terms of DigitalOcean, they only charge by the storage space and bandwidth use. So it's easier to run an Laravel app on there without incurring "micro-charges". If your app reaches some sort of performance limitation, the DO server will just crash (or you can automatically scale it up, depending on your setup). However, you don't get the benefit of dedicated services like AWS' RDS, so you'd have to spin up your own SQL server (either in the same droplet, or preferably another).