What is the best way to handle a form with a Start Date and End Date?

When selecting a Start Date greater than an End Date, which of the following is the best approach:

  1. Highlight the Start Date as invalid.
  2. Highlight the End Date as invalid.
  3. Highlight both fields as invalid.
  4. Automatically increase the End Date to be equal to the Start Date.
  5. Other?
  • Are you using a calendar datePicker or just plan text? Do you have some limitation o could you use whatever you want? May 12, 2015 at 4:28

1 Answer 1


To answer this question, you should validate different scenarios that users are trying to change the start date:

- By mistake: If a user has already selected start date and end date and noticed they have chosen a wrong start date for their plan, they want to change that to another day, your system must let them to apply this change quickly. The best user experience to handle this state is to automatically adjust the same period. For example, I have selected starting June 10 to 15th but it is a mistake and I want it to be May 10. So I go back, select May 10 for start date, the system should adjust the end date to May 15.

- On purpose: If a user already aware of the action in the first step, but wants to explore more options and tries to restart the process. In this case if you give them some errors, they will be disappointed or confused, they expect that they are able to change those dates as long as they have not finished the process. So in this scenario, they best user experience will be the same.

So I would highly recommend option number 4 which has already passed a lot of good usability tests as well. You can also refer to http://flights.google.com to see a good example for this scenario.

  • 2
    Its not good UI to change user input data! Theres nothing more annoying than a form that makes a 2nd error to correct while you are mid way through changing a first error.
    – JamesRyan
    May 11, 2015 at 16:31
  • In order to make the best user experience for these kinda cases, we should consider different scenarios, what is the scenario that you have in mind which makes the user annoyed? If after changing the start date, you automatically adjust the end date and also keep the panel open to let them change the end date, not only you gave them a clear experience, but also you can still let them to have another change. I'm really interested to see the specific scenario that you have in mind.
    – aliesifar
    May 11, 2015 at 17:02
  • 1
    So I set my start and end date. Realise the start date is wrong and change it mistakenly to a date thats too late. The end date moves even though it was right in the first place. I now have to change 2 dates back. Why would you set the end date first? because you have another trip/event/whatever occuring after this one.
    – JamesRyan
    May 11, 2015 at 19:33
  • Sure, but anyway with that User scenario that I mentioned, you still have the chance to make sure about the end date as well, this also cover more mistaken cases. The user study that I've specifically done about this issue shows the biggest mistake happens when users are selecting a wrong month in their selection, so that would be the best solution to automatically adjust their period. In the other case that I mentioned also the result proves they prefer to see the adjusted. The case that you are talking has 2 mistakes in it, so having 2 selection makes sense.
    – aliesifar
    May 11, 2015 at 19:38
  • @JamesRyan Well explained. If the active field changed is correct, it might or might not be a good idea to update the other field. However, if the active field is updated to the wrong date, we definately do not want to update the other field. Option 4 is off the table. May 11, 2015 at 22:11

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.