Launch HN: Zaraz (YC W20) – Use third-party tools without slowing your website
Hi HN! We're Yair and Yo'av of Zaraz (https://zaraz.com). We make websites faster by loading their third-party stack in an optimized way. By “third-party” we mean utilities or additional products you add to your website (eg. analytics), not things you build your website with (eg. React).

Before we started this we worked on opposite sides of this battle for third-party inclusion: Yair was working for the folks asking to implement just-one-more analytics tool, while Yo'av was a developer trying (and often failing) to push back. Avoiding bloat to begin with would be preferable, but anyone working for even a medium-sized company knows how hard that is - usually when a higher up agrees to try or add a new tool, resistance is futile. Hence the question becomes, can you do it without harming your performance?

The average US top 5,000 website loads 22 different third-party tools - analytics, customer success, marketing and whatnot. We wrote a bot that scanned these websites and discovered that third-parties account for 40% of their “Time to Interactive”, and other metrics like TBT, FCP, FID and CLS were hurt in a similar way. From the user perspective, the page usually behaves exactly the same without these tools (...except 40% faster).

These new metrics are becoming more popular for two reasons. Firstly, users actually feel them - unlike events such as "DOMContentLoad" & "Load" that can be triggered long before the user can actually do anything, these metrics provide a much better proxy to the real user experience. Secondly, with Google soon penalizing slow websites, they're becoming more and more important for SEO. We see the growing popularity of these metrics as a good thing. We want a faster web.

Nowadays, the most common way to integrate a third-party into your website is either to just paste its `<script>` snippet somewhere in your code, or use some "Tag Management" software (awful name!) like Google Tag Manager, Tealium, or even a tool like Segment. All these options pretty much come with the same cost - everything loads by default together with your page, and users just have to wait and wait. If all this slowness doesn't feel so bad on your devices now, remember that much of the world accesses the internet through devices that are probably a lot slower than yours.

We built Zaraz to be a performance-first third-party manager. Each tool is different, but the concept is to run whatever we can on our backend instead of in the browser, leaving it to focus on loading your website. While other solutions serve all your visitors with the same script and then evaluate it in the browser (should we run this conversion pixel? Should we load this analytics tool?) - we do this on our backend. But the real magic is that we created an environment living inside a Cloudflare Worker, that executes the actual third-party scripts instead of having them run in the browser. Google Analytics, Reddit conversion pixel, LinkedIn Insight, you name it - we’re turning all those things into miniature server-side applications that your visitors’ browsers need not to worry about. If a certain tool still needs to fire a request from the browser (eg. it needs to set a cookie), only the resulting URL from evaluating its script will be sent back to the user browser. It’s a server side environment executing third-party code, that you have 100% control over. When we measure the speed of a website optimized with Zaraz, third-parties have close to zero effect on it, because the browser almost does nothing.

We are already serving a few customers in production, and we’re seeing huge improvements in speed (and revenues!) with all of them. Zaraz is probably the easiest way you can make your website faster, today (try our analyzer to see how we can improve your website: https://zaraz.com/analyze). Aside from performance, since we have total control on what data is revealed to our isolated environment, we are using it to help companies protect the privacy of their visitors by masking PIIs, hiding IP addresses, disabling fingerprinting etc. We designed our infrastructure as a set of serverless, storageless and stateless functions - to make sure your visitors data is never saved, not even by accident.

We are currently onboarding mostly enterprises and high-traffic websites, but we plan to introduce a free tier after we are done creating a self-onboarding flow. We are on a mission to make the web faster and we want all websites to benefit from it!

We would be thrilled to hear what you think, and if you have more ideas on how to make websites faster please do share them with us. Thank you!