We are developing a data-heavy site and I was wondering, how should we present (or hide) upcoming functionalities. Let's say in a form an option which will only be available later. Or a button that says 'create new xy'. What would be the best practice here? Should we completely hide the functionality until it is released, or show it, but how, in order to not end up frustrating the user by clicking something that is not yet available?

Would appreciate some help as we are not sure how to proceed.

  • 1
    What is the benefit to the user of teasing a feature that is not usable at the moment?
    – Nicolas
    Commented Jul 31, 2023 at 0:11

4 Answers 4


Without knowing more about your specific application and its users it is difficult to offer specific suggestions. Also curious about your concerns around upgrading functionality. What do you fear will happen if you don't warn users in advance? In more general terms there are a few ways of approaching the introduction of new functionality or changes. In no particular order:

  1. When the change is ready - deploy it in parallel and encourage users to swap to the new version (Atlassian and Microsoft Office do this for example) before eventually switching over when analytics show a certain percentage of users have switched. The downside of this is that it requires you to serve and maintain multiple versions of your application.

  2. Create a newsletter (old school?) or twitter or Youtube or something and introduce users to upcoming changes that way before release. Could add a link to the article or video on the current site.

  3. When you do the release - include a wizard that highlights the change(s) on the interface as soon as the page is loaded. I've seen this sort of thing on currency exchanges before, for example.

  4. Test the new functionality (either functional or non-functional) with a group of users and see how they respond to the change. Does it confuse them? does it result in unexpected behaviours? Or do they get it straight away. This could then inform any subsequent rollout.


Why would you show something that cannot be used?

The only reason I could think of is if you are curious whether people would use it and gather quantitative data from that. But that will still frustrate people if they encounter it to often.

  1. Use a progress tracker to divide the whole form into baskets
  2. Reward the user by giving some rewarding words like congratulations on completing 60% of the form.
  3. Ask dev to put autosave feature so that the user doesn't have to save every now and then
  4. Add some graphics/illustrations to break the monotonous form design
  5. USe 80/20 rule to find the most important question first and detailed questions later

Hope this helps


I think it's nice to show upcoming feature (although be careful with overpromising in this case).

What I would suggest is to use similar UI as you have for your disabled elements. For example if this is new element in the list:

  • fade it out
  • give it a small badge UPCOMING or SOON
  • when released but still in testing, use BETA badge, so users can expect some bugs but if they really wanna try, they can.

Advantages I see here are

  1. Users might see the flow / form now, and be aware it's gonna soon be expanded with the feature they wanted and they will come back later as well.
  2. The more you're communicating about new features the better in my opinion. This way users know what to expect, they have time to get used to the place of new feature, and simply "awaiting time" is somehow exciting.

But, as I mentioned before, be mindful about overpromising. If you have the feature marked as UPCOMING and don't deliver in 4 weeks you might just loose the trust of your customers.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.