Feature creep: everything but the kitchen sink. Is your software guilty?


Is feature creep leaving your product cluttered?

In the race to provide the best possible product to your customers, to be the new leader in the market, it’s all too easy to fall into the trap of adding more and more features.

But wait, more features can’t possibly be a bad thing, surely? Maybe we should throw the kitchen sink in too, for good measure.

Well, let’s discuss why feature stuffing is not the path to providing a good product.


What is feature creep?

Feature creep begins with good intentions. It’s born from a drive to provide a competitive product, and to make even the most obscure of potential customers happy.

In a bid to improve, feature creep is the phenomenon of adding extra features that obscure your product’s core goal or function. This ongoing feature expansion is often to the detriment of your software.

“Progress” is actually a bunch of unused features that make computers less stable.

 -Technopedia.com

This statement applies to software as well as hardware computing. (Think the disastrous Nokia N-Gage, that tried to be a mobile phone and gaming console in one.) Ultimately, most surplus, unsought features end up adding no long-term value to your product.

Feature creep isn’t a jackpot for your customers: it’s an illness that potentially kills your product.


Jack of all trades, master of none

Stuffing features into software means that your product may be able to perform lots of tasks, but won’t be fantastic at doing anything specifically.

When your product can’t even carry out its core function amazingly, it’s time to recognise that you’ve fallen foul of feature creep. Features might attract customers, but it won’t keep them when every task they want your product to perform is handled in a mediocre way.

You won’t keep customers with a product that doesn’t serve its basic function, so keep it simple.


User experience

The last thing you want in your pursuit of a great product is providing software that gives a bad user experience. Unfortunately, this is a common symptom of feature creep.

Let’s begin with onboarding. A customer has found your product because they’re looking for a tool to fulfil a specific function, and they’ve hit a relevant landing page on your website. Great.

But then, when the user tries to download a trial, installation takes forever due to all those memory-hogging features you’ve developed. No one likes having their time wasted – not least customers who could shop elsewhere. You need a product that consumers can use within moments of onboarding, not after a lengthy, complex installation.

Once (finally) past installation, your customers open a product that’s heaving with options, tabs and settings. They’re awash with features and don’t know where to begin. Cue frustration. The UI is so cluttered that your customers can’t even find the key features they want, let alone enjoy using the cool new tool they’ve found.

All of this comes together to create a negative user experience, which leads to reduced retention. You might briefly be catching the eye of new customers, but you also risk upsetting current customers by changing the product into a mess that they cannot use efficiently.


Paradox of choice

There’s also the phenomenon known as ‘the paradox of choice’ to consider, which is where humans given more choices are often unhappier with the decisions they make.

The fact that some choice is good doesn’t necessarily mean that more choice is better. 

-Barry Schwartz

Simple software is pain-free software. Not only can your customers actually use your simple, slim-line product, they’ll likely be happier using it.


Costs

Because your product has become so complex, you’ll find customers have an increased need for customer support. You’ll then need more staff to compensate.

As such, the cost of this resource drain can end up passed on to customers, meaning that you’re less able to offer a competitive price.

Resource drain will also spread to your development team. All those add-ons and extensions can become too messy for your developers to handle easily, and they’ll struggle along with your customers.

More features means more potential bugs, which means more resources needed, and another cost driving up the final price of your product.


Delay of product release

It’s easy to get carried away with feature creep. The cost of adding a small feature is like looking at an iceberg: there’s a lot more under the surface that you won’t see until it’s too late. Before you know it, your time and resources are depleted.

The desire to add more features causes you to push back that ‘perfect’ software release, but it will never end. You could wind up postponing a piece of software infinitely – there will always be something else you could add. That really doesn’t mean that you should.

For products already infected by feature creep, sticking to deadlines can also have a negative effect on your software. Tight deadlines can mean that the most elegant organisational solution for the jumble of features cannot be met in time.

Instead, your developers must make what they have work, potentially leading to a messy, difficult to understand product.


Loss of update possibilities

Updates show that your product is remaining competitive. They also demonstrate that you still care about current customers, by trying to provide them with the best software at all times.

These regular updates are a great way to improve your software, and admittedly, that may involve adding new features. But by releasing the base product first, you give your customers time to learn how to use your software. You can then conduct user research and learn which features could improve your customers’ experiences — instead of cramming them all in at the start and providing features that are almost never used.

If you think you must have all these features, consider providing them in the form of add-ons that your customers can use to personalise their product, instead of forcing every feature on every customer.


Don’t be a victim

Feature creep is an easy ailment to catch for software developers. After all, releasing a new product that doesn’t do something better than its predecessor just isn’t logical. How will you attract customers, or convince them to upgrade?

But neither is it logical to kill your software by making it confusing to the majority of your customers, or attempting to cram in so many features that you’ve got a product that will never be ready for release.

So, let’s just leave the kitchen sink where it is and go back to basics. Always have your core product goals in mind, and don’t be a victim of feature creep.


Useful links

The top 3 benefits of building an MVP: why you need to begin with a minimum viable product

Software development and the MOSCOW method

Overengineered software and the Juicero problem