Back to blog

Digital Agencies and the XY Problem


June 7, 2014 - Posted in blog Posted by:

Tags: ,

Estimated reading time: 5 minutes
Working in an agency we come across the XY problem quite often. It has been written about a fair few times, but always from a technical perspective, so I thought it may be useful to give an explanation of this phenomenon from a client / UX point of view instead.

What is the XY Problem?

The XY Problem is where a problem exists (X) and in order to solve it the ‘solution’ of Y is proposed. And then people discuss the best way of doing ‘Y’ without really thinking about whether that is addressing the root problem in the first place.

Lets take a typical UX example. A client comes to you with a request.

“We need a carousel on the homepage showing all the main products we offer”.

It’s a pretty typical question, and I’d wager many agencies have had this very request come in to them.

So you do the diligent thing. You go and meet the client, find out how many products then need displaying in this carousel. You ask them if any products have a greater priority than others. You ask if this has to work differently on a mobile… All the useful questions to get as much information from the client as you can.

You will also look at the site as it currently exists; find out what (if any) CMS is being used. You look at different JQuery implementations, or whether there are any Drupal modules that can serve this purpose.

And you do find a nice little Drupal plugin that’ll do just what they want. Except it’s not really keyboard accessible so you start looking to see if we can update it, get the tab order working properly, ensure each slide can be navigated with the ‘Tab’ key logically…

And then it dawns on you: What exactly is the problem that this carousel idea is actually going to solve?

It’s an obvious question. And you kick yourself for not having thought about it until now. Have you been wasting time and effort trying to sreamline this Drupal carousel when a carousel may not actually be appropriate after all? You go back to the client:

“You’re asking for a carousel. How will you know that what we give you is what you need?”

“Well, if it shows links to our gloves, shoes, scarfs, socks, cloaks, umbrellas, waterproofs, ties, hats, and slippers then that’s good.”

“So why do you need links to all these sections on your homepage?”

“Well, the heads of each of those departments want their products represented on the homepage”.

“You realise that with a carousel the hats and slippers options will be right at the end, so it’d require the user to have clicked the ‘next slide’ option half a dozen times before they see them?”

“Oh yeah, that’s a good point. The stakeholders need their products represented on the homepage so they can monitor the click-through rates from the homepage to the products. If the products are always there in a carousel but never seen then that means the click rate is going to be misleading. Can you suggest anything else?”

“Well, if the requirement is actually about being able to monitor click-through rates from the homepage to the products, then why don’t we just give you a promotional area on the homepage and randomize the item that appears in it? That way you can see that whenever it appears on page load and people click it you’ll have accurate statistics for viewers to clicks?”

“Ah, that’s a great idea! Lets do that instead!”

And bingo. That’s your XY problem. You’ve spend time and effort looking into better ways to do a carousel (aka ‘Y’) when what you really should have been doing is defining what the actual problem was (aka ‘X’) and then solving that.

This is especially an issue in the agency world because you don’t want to be wasting time and effort on work that isn’t really going to be beneficial. The client is going to be unhappy because they’ve paid money for something and their root problem isn’t actually solved. Your agency is unhappy because you’ve wasted time on something unnecessary and you have an unhappy client who may be less willing to pass work your way in future. You’ve got to go back to the drawing board and you’re no further along than you were a few weeks ago so the project slips and you’ve either got to charge the client for the time you’ve spent (which they will not be happy about) or you have to take it on the chin and write off that time spent (not exactly good for an agency’s balance sheet!)

How can this be prevented?

It’s a tricky one. Although this example is a pretty black and white example, these sort of XY problems come up all the time. You have to be able to recognise it when it arrives so you don’t waste time solving the wrong problem. And the best way to do this is with one word:


You need to find out why this request has come in. Any different way you can phrase the question “why” the better. “We can build that for you, no problem. But why do you want it?”

Make sure you understand the problem that is at the root of the request. If you’re confident that you know what the problem is then you’re free to come up with your own Y to solve it.


Billy Bob 6 years ago

All this hinges on the fact you couldn’t get a carousel to work so you bailed and went for an easy option.

If I was a user on the site I wouldn’t want randomized promotions as I’d want to re-visit and find that particular promotion with ease. This randomized promotion would be very bad UX and ultimately sales for your client.

I’d have suggested randomizing the order of the carousel instead to assure you get proportionate stats and hierarchy.

Lesson here: learn the code to make better UX


Jon Walmsley 6 years ago

My post is not about a particular carousel. That was used as a familiar example to illustrate the XY problem itself.

I would say that regardless of how well a carousel is coded (and I’ve been involved in some that have been very well built – fully keyboard-accessible, responsive and content-manageable ones) that isn’t going to make a difference if a carousel wasn’t the appropriate widget in the first place. The internet is flooded with articles showing analytics supporting the fact that carousels don’t increase click-throughs. The same would be true of well built ones as well as poorly built ones.


Billy Bob 6 years ago

Regardless of click through rates on carousels it’s detrimental to the problem (X).

The alternative solution is a poor method for user experience. As the client I would feel short changed – a static random promotion would not be indexed nor would it be a good reference for returning users.

The article should be Problem (X), Solution (Y) and Execution (Z).

The execution of the solution is pretty poor in this instance


Jon Walmsley 6 years ago

Again, my example was purely used as an illustration of the general problem; I am not proposing a solution to a specific carousel implementation.


Billy Bob 6 years ago

I’d find a less convoluted example

Leave a Reply

Your email address will not be published. Required fields are marked *