diff --git a/core/src/main/java/com/yahoo/ycsb/Client.java b/core/src/main/java/com/yahoo/ycsb/Client.java
index 94d14ce29b8a25e2174c23d187cb6faae576d1c5..1e31c11210b2d210b9f691750a1aba9784590944 100644
--- a/core/src/main/java/com/yahoo/ycsb/Client.java
+++ b/core/src/main/java/com/yahoo/ycsb/Client.java
@@ -331,25 +331,25 @@ final class RemainingFormatter {
     StringBuilder time = new StringBuilder();
     long days = TimeUnit.SECONDS.toDays(seconds);
     if (days > 0) {
-      time.append(days).append(" days ");
+      time.append(days).append(days == 1 ? " day " : " days ");
       seconds -= TimeUnit.DAYS.toSeconds(days);
     }
     long hours = TimeUnit.SECONDS.toHours(seconds);
     if (hours > 0) {
-      time.append(hours).append(" hours ");
+      time.append(hours).append(hours == 1 ? " hour " : " hours ");
       seconds -= TimeUnit.HOURS.toSeconds(hours);
     }
     /* Only include minute granularity if we're < 1 day. */
     if (days < 1) {
       long minutes = TimeUnit.SECONDS.toMinutes(seconds);
       if (minutes > 0) {
-        time.append(minutes).append(" minutes ");
+        time.append(minutes).append(minutes == 1 ? " minute " : " minutes ");
         seconds -= TimeUnit.MINUTES.toSeconds(seconds);
       }
     }
     /* Only bother to include seconds if we're < 1 minute */
     if (time.length() == 0) {
-      time.append(seconds).append(" seconds ");
+      time.append(seconds).append(time.length() == 1 ? " second " : " seconds ");
     }
     return time;
   }