My website loads very slowly and inconsistently over Tor

Hi everyone, I manage a small restaurant review website that focuses on Texas Roadhouse locations, menu updates, and coupons. Recently, several of my visitors reported that the website either takes a very long time to load or fails to load entirely when accessed through the Tor Browser. The same site works perfectly fine on Chrome, Firefox, and even Brave, so I suspect the problem is somehow related to how my site interacts with Tor exit nodes or its privacy settings.

The strange thing is that it’s not a consistent failure. Sometimes, the homepage loads after 30–40 seconds, but the images and style sheets fail to render. Other times, the browser shows a “Connection has timed out” error. I’ve tested this on multiple systems, and I can reproduce the same issue when I try visiting my site via the Tor Browser using default security settings. When I check my web server logs, I occasionally see incomplete TLS handshakes or very short-lived connections from Tor exit IPs.

My server is hosted on a VPS running Ubuntu 22.04 with Nginx and Let’s Encrypt SSL. I’ve checked the error logs and don’t see any obvious blocks — no firewall rules are filtering Tor traffic either. However, I noticed that when I switch to Cloudflare’s proxy, the loading improves slightly, but some of the dynamic scripts (like menu search filters and coupon pop-ups) stop functioning because Cloudflare’s security layer sometimes challenges Tor users with captchas or rate limits. That’s not ideal for accessibility or user experience.

I’ve read that Tor circuits can introduce latency due to multiple hops, but this feels beyond normal. It almost seems like some of the resources — especially CSS and JavaScript files served from my /assets/ directory — aren’t being fetched properly by the browser. Could this have something to do with how my website handles HTTPS redirections or HSTS headers? I use automatic redirects to HTTPS via Nginx, and I wonder if that’s conflicting with Tor’s connection paths somehow.

I also considered whether my content delivery setup might be affecting things. Currently, my static files are cached via a regional CDN that doesn’t always play well with anonymous traffic sources. When I bypass the CDN and access the origin server directly through Tor, the load time improves slightly, but it’s still unreliable. That makes me think this might not just be a performance issue — maybe something about how Tor handles DNS or circuit negotiation with my domain is causing delays.

Has anyone else experienced similar behavior with self-hosted websites being slow or partially broken over Tor? Are there best practices to configure Nginx or the SSL stack to better support Tor traffic? I’d really appreciate any advice on making my website more stable and accessible for Tor users without disabling security protections or caching. Sorry for the long post!

Is there anyone who can guide me?

I was going to reply for you to give us a URL. Seems you did in your own reply.

Surprisingly I did not see that 30-40 second wait on Tor. Seemed normal. Tried it out of US, CA, FR, DE, NL

On my regular Firefox browser, it was a lot longer and it came from Cloudflare. I timed it at about 22-26 seconds. In normal times I would have clicked exit after about 10-12 seconds.

I saved the whole page. Wow! That is heavy. Why do you download that 4 MB PDF and integrate it on the front page? Why not wait for the visitor to request it?

I have to scroll 3.5 pages before I see anything about a menu and in that time 4 ads have shown up. Maybe all those ads are slowing things down.

I see you use lazy load which is good. I actually scrolled down to the bottom just to see. Lots of stuff there.

Why not a front page which is short and sweet and all that other stuff when a visitor clicks a menu item?

You mention accessibility and user experience. I realize you need to monetize the site, but wow, that is a lot of ads.

DISCLAIMER: I AM NOT AN EXPERT IN ANYTHING

1 Like

Hey @emilywatson,

I’ve run into similar issues before, and you’re right — Tor can be picky about how sites handle HTTPS, CDNs, and timeouts. The fact that your site works fine on regular browsers but slows or half-loads on Tor usually means something small in the setup is making life hard for exit nodes.

A few things you could try:

1. Bypass the CDN for a bit: Even when it’s not outright blocking Tor, many CDNs throttle or delay connections from Tor exits.

2. Check your Nginx HTTPS redirect setup: Sometimes multiple redirects (like http → www → https) cause timeouts through Tor.

3. TLS compatibility: Tor’s exit relays can behave oddly with strict TLS settings. You might try allowing both TLS 1.2 and 1.3.

4. Timeout and keepalive tweaks: Tor’s latency is naturally high, so it sometimes helps to give connections a bit more breathing room.

Hope this helps a bit! Tor can be tricky, but once you dial in the config, it usually stays stable. Good luck — would love to hear if any of these tweaks make a difference.

~shdwcodr