Browser (~3 lines of JS) -> API Gateway -> SQS Queue -> Lambda (ETLs queue into) -> Athena.
I was originally just going to use Postgres, but RDS/Aurora are expensive and running Postgres in EC2 is going to be at least as much work (configuring SSH, process management, backups, monitoring, logging, image building, networking, etc).
My custom plan is ~$3/month all-in provided I stay below ~1M requests per month, and even then it scales very cheaply. Also, this design is highly scalable, although I doubt I'll ever take advantage of it; it's mostly just icing on the cake. The main motivation is that these components are available on the free plan ("forever", not just the first 12 months) and/or the pricing model makes the charges negligible for my super-low-volume use case.
Note that this doesn't give me pretty dashboards; the interface is SQL. Fortunately, there are other analysis tools that I have at my disposal which can plug in to SQL.
Lastly, of course my $5 budget doesn't do justice to the actual value of my time; it's more of a fun challenge. If I really just wanted web analytics, I should shell out the $6/month for plausible or similar.