Third Party Problems

or: How I Learned to Stop Worrying and Love Testing.

Jason Grigsby on stage at performance.now() conference, with his opening slide on screen.
Jason Grigsby on stage at performance.now() conference, with his opening slide on screen.

Intro

A couple of weeks ago I attended performance.now() conference in Amsterdam. All the talks were excellent, but one in particular I thought would be of interest for a blog was by Jason Grigsby about third party integrations on websites and the site speed issues they can cause. Jason gave lots of great case studies on some specific challenges and some strategies to address those challenges. However, in general he had a lot of frustration with the lack of traction he often faced.

I wanted to share my perspective.


While I have shared many of Jason's negative experiences with third parties, I have also had some interesting success stories:

There are a few things these had in common:

For those of you on the "buy" side of the equation, here is my advice.

  1. You should insist on trial periods for any new technology. Firstly, you get the opportunity to make sure it works. But perhaps more importantly, this period is when you have the most leverage over the supplier. Once you've signed up to that two-year deal it is too late.
  2. In my experience there is a power imbalance in the contract signing part of the process. The vendor comes with this big contract, there's some negotiation on price and then you either sign or you don't. But a contract is a two-way document and I would advise buyers to write their own clauses to give them exit opportunities if the tool causes web performance issues. The worst the vendor can do is refuse to sign, and there are plenty of more fish in that particular vendor sea.

To the vendors in the room.

Some of you take web performance seriously (Hi Shopify), but not enough of you do. Since the introduction of Interaction to Next Paint as a Core Web Vital earlier this year brands are becoming more and more savvy to the impact of that "just one line of JavaScript" that it takes to install your widget.

If you don't start taking this seriously, it will cost you business. On a technical note, you need to move away from being so dependant on client-side integration and move to API driven back-end integrations.

The web should be faster, it's better for your users and better for your businesses.

p.s. Thanks to Phil Wolstenholme for the input on the contract clause wording around testing methodology.