Free hotspot internet providers (eg Meraki) can have pretty good bandwidth but still feel slow because their DNS resolvers suck and they don't know it. You'll have great response from an SSH session or webmail but clicking a link to a new site will pause or fail.
Even large ISPs get this wrong. I tried for several years to convince BellSouth that one of their DNS resolvers was down:
"No, my internet is not down. The DNS server is down. I can ping. DNS. Dee Enn Ess. Pee Eye Enn Gee. Do you understand I'm trying to tell you about a bad problem with your system? One of your DNS servers is down. It's been down since 2003 but it's still in rotation. Yes, I restarted my router. Yes, my connection is now working but that's not the poi--". Click. Good times.
Solution: install your own damned resolver. I recommend Dr Berstein's excellent dnscache, part of daemontools djbdns (which itself runs under daemontools). Incidentally, this is also a good idea for your servers if you do any crawling, image fetching, etc. You'd be surprised how much it can help.
Excellent installation instructions here:
http://matt.simerson.net/computing/dns/djbdns-macosx.shtml
http://matt.simerson.net/computing/dns/djbdns-freebsd.shtml
Credit to tlack, who taught me this trick back when I was still figuring out bash.