language-agnostictimeuser-interfaceprogresstime-estimation

Correct way to textually report the remaining time on a long running process?


So you have a long running process, perhaps with a progress bar, and you want a text estimate of the remaining time, eg: "5 minutes remaining" "30 seconds remaining" etc.

If you don't actually want to report clock time (due to accuracy or resolution or update-rate issues) but want to stick to the text summary, what is the correct paradigm?

Is "one minute" left displayed from 0 to 60 seconds? or from 1:00 to 1:59? Say there's 1:35 Left - is that "2 minutes remaining" or "1 minute remaining"?

Do you just pare it down to "A few minutes left" when you're less than 3 minutes?

What is the preferred (least user-frustrating) method?


Solution

  • This is somewhat subjective. However, I would round to the minute until you get down to 30 seconds.

    01:02:05 = "1 hour 2 minutes remaining"
    00:02:35 = "3 minutes remaining"
    00:02:29 = "2 minutes remaining"
    00:01:35 = "2 minutes remaining"
    00:01:05 = "1 minute remaining"
    00:01:00 = "1 minute remaining"
    00:00:59 = "Less than 1 minute remaining"
    // Switch to seconds at :30
    00:00:30 = "30 seconds remaining"
    00:00:29 = "29 seconds remaining"
    

    Avoid using the shortcut "minute(s)". Spend the extra time to output "minute" for one minute and "minutes" for anything greater.