Cloudinary Blog

The Laughable Curve - Optimizing Your Media and Maximizing Revenue

How you can now create content in unique ways for each web visitor
In economics, there is a concept referred to as “The Laffer Curve,” which illustrates how increases in government tax rates beyond a certain level will ultimately decrease tax revenue.  It is often visualized with the following graph:


 

Beyond tax rate t*, tax revenues actually decrease because economic activity is stifled as a result of excessive tax burdens. You may wonder why we are discussing mundane economic principles, but there is a very good reason: Your website/app follows a similar curve with regard to revenue and media performance.


Consider how this concept applies to your website. You have to compress your images so your site loads as fast as possible, but you don’t want to compress them too much and suffer the consequences of poor image quality. In most cases, we have to guess what our optimal tax rate (bandwidth) is to maximize revenue. If we compress our images too much, visual quality becomes poor and our website/app becomes laughable from the user perspective. Because of this, I call the web performance version of the Laffer Curve “The Laughable Curve” and it looks like this:
 
The Laffer Curve
 

Some sites opt for a quality that still looks pretty good but is compressed as much as possible. Perhaps those developers understand their visitors and know that a faster loading website is more valuable than a nice looking one. Others opt for high visual quality and even minor, barely noticeable image artifacts are unacceptable. In these cases, developers may know that their visitors are discerning types, who have very high standards, and they don’t want to risk their brand image.


Much of this is likely speculation, though, because it is hard to determine where Q* sits.  Even in today’s world of personalized experiences, A/B testing and advanced analytics with micro segments down to the 1:1 level, we’re still left to guess what people want.  And that guesswork is potentially leaving a lot of money on the table. For example, ecommerce giant Amazon noted that a page load slowdown of only 1 second would cost it $1.6 billion in sales revenue. Similarly, Google noted that a slowdown of just four tenths of a second in its search results would result in a loss of 8 million searches per day, which translate into millions less in online advertising.


The relationship between site performance and revenue/conversion is a highly studied one and the evidence is overwhelming that performance has an outsized effect on your key performance indicators (KPIs). This potential A/B test uniquely doesn’t start with a hypothesis, but an established theory.  So why is it rarely, if ever, tested?  My theory:  the “Content Dilemma.”

The Content Dilemma

The Content Dilemma is a stubborn bottleneck that has plagued marketers, creative teams, product managers and developers alike. Simply stated, your ideas for using content in unique ways for each web visitor is hampered by your capacity to create that content. Anyone who is trying to personalize their site, run a nurture campaign, or deal with segment-based display advertising quickly runs into this limitation. In turn, the idea of testing image quality on your site falls victim as well, since different images have to be created for each different quality level you want to test. Cloudinary can help you create dynamic content programmatically and on the fly, eliminating this creative bottleneck, and providing vital assistance when executing A/B testing to ensure that you’re maximizing revenue.


To determine the optimal image resolution to maximize bandwidth, three ingredients are needed: 
 
  1. A way to conduct A/B/N tests – These can be internal systems or a third-party tool like Maxymiser, Optimizely, Adobe Target or SiteSpect. For technical reasons, a server side solution or a SiteSpect account might be best, since manipulating image URLs with JavaScript could introduce its own performance issues.  
  2. A reporting mechanism – To get maximum value out of an A/B/N test, it is necessary to set up as many segments as possible, since different cohorts will respond differently to changes. For instance, you can compare mobile vs. desktop, since there’s typically a huge variability in connection speed and browser performance. There are also distinctions between rural and urban, different browsers, new and returning customers, with hundreds of other unique factors coming into play. Maxymiser is a really great tool for doing this because it will identify what your important segments are without requiring you to set them all up ahead of time. Passing the visitor experience as a variable to your site analytics tool (Adobe Analytics, Coremetrics, WebTrends, to name a few) will work great as well, enabling you to closely examine how exactly behavior is affected by image size/quality.
  3. Images – You will want to start with four or so different quality levels (a A/B/C/D test), which will require you to take the number of images on your site and multiply by four. Don’t ask your creative team to do this, they will never talk to you again. Here’s where a tool like Cloudinary is valuable because it enables you to quickly create various images simply by changing a parameter in the image URL. The ability to make these image changes on the fly will not only help you execute the test, but also maintain the winning experiences going forward.

A Closer Look at Image Quality

Now, let’s take a closer look at how you can change image quality when doing A/B/C/D testing. 

This is my original image, Farmer Bob: 

Farmer Bob
 
I can adjust the quality of the image simply by adding a parameter to the url. If I want 80 percent quality, it looks like this:
 
Farmer Bob q_80
 
After the “q_” string, simply insert the % quality you want between 1-100.  For this image for four different qualities, we come up with the following sizes:
 
Farmer Bob q_90   Farmer Bob q_80
Q_90 (196.83 KB)                                              Q_80 (143.08 KB)  
 
Farmer Bob q_60   Farmer Bob q_40
Q_60 (85.37 KB)                                                 Q_40 (62.48 KB)
 
Cloudinary also offers more advanced compression algorithms, called “auto quality” (q_auto). These algorithms use a perceptual model to investigate each image individually and adjust several levers that have quality and size impacts (format, chroma/luma quality, chroma subsampling, progressive vs. non, etc.) to compress as much as possible while maintaining a high level of visual quality. If you wanted to use those options, there are actually four levels of “auto” quality.
 
 Farmer Bob q_auto:best   Farmer Bob q_auto:good
Q_auto:best (113.54 KB)                                       Q_auto:good (89.57 KB)

Farmer Bob q_auto:eco   Farmer Bob q_auto:low
Q_auto:eco (65.48 KB)                                            Q_auto:low (57.91 KB)
 
Of course you could add more variations to your test, but I recommend starting with four because it will allow you to gather enough data per experience for relevant results. From there you can hone in on where you should perhaps dig a bit deeper in a follow-up test.
 
As you can see, there are many variables and scenarios that can impact how you manage images on your website - from resolution and image size to bandwidth usage. By leveraging these tips, you can optimize your website for site performance and revenue/conversion rates, plot your Laughable Curve and find your Q* for each key segment. The processes outlined here can take the guesswork out of the testing process, help you overcome the content dilemma, enabling you to simply and effectively reach each unique web visitor. 

Recent Blog Posts

How the Right Tools and Training Drive SDR Success

Here at Cloudinary, I head a team of eight SDRs, who are responsible for creating the first impression potential customers have of our company’s brand. In just the first 10 months of 2017, our team of outbound SDRs have been responsible for sending more than 67,000 personalized emails and making more than 15,000 calls.

Read more
The JS video player that developers will love (How To)

It doesn't take a genius (or a statistician) to know that video represents a significant proportion of web and mobile content these days. But did you realize that in 2017, video will account for about 75% of all internet traffic and that 55% of people watch videos online every day? In fact, 52% of marketing professionals worldwide believe that video is the content type with the best ROI, with people spending up to 2.6x more time on pages with video than on those without.

Read more
 Beyond Drupal Media: Make Images and Video Fly with Cloudinary

Drupal is a very popular open source content management system (CMS) that has been deployed countless times by organizations and developers around the world. Drupal gained a reputation for being very flexible, powerful and robust in creating complex websites. With Drupal, you can create everything from plain websites, blogs and forums to ambitious enterprise systems.

Read more
Curbing Terrorist Content Online

Today, Cloudinary is proud to announce that it has joined The Global Internet Forum to Counter Terrorism (GIFCT), to help fight the spread of terrorist and violent extremist content on the Internet. The forum was established by Facebook, Microsoft, Twitter and YouTube in mid-2017. Cloudinary will contribute to the hash-sharing database, which all contributing companies can use to help identify and block terrorist related images and videos upon upload.

Read more
Introducing the complete video solution for developers

Videos in web sites and apps are starting to catch up with images in terms of popularity and they are a constantly growing part of the media strategy for most organizations. This means bigger challenges for developers who need to handle these videos in their web sites and mobile apps. Cloudinary's mission is to solve all developer needs around image and video management. In this blog post, we are excited to introduce Cloudinary's complete cloud-based video management solution for developers.

Read more
Getting Started with StencilJS

Stencil is basically a compiler, not necessarily a UI library. A compiler that transforms TSX (TypeScript + JSX) into self-contained custom components.

Before you start learning about the tool, it’s important to note that Stencil is not another heavy JavaScript framework you need to learn. If you have worked with Angular or React, or understand web components, then Stencil is worth a look.

Read more