diff --git a/applications/utilities/mesh/manipulation/transformPoints/transformPoints.C b/applications/utilities/mesh/manipulation/transformPoints/transformPoints.C
index e67d55162175f664c6ba5886619ea41a166dceda..88a72233df09aa523b4d1f90c2225cbb1ab1c2bd 100644
--- a/applications/utilities/mesh/manipulation/transformPoints/transformPoints.C
+++ b/applications/utilities/mesh/manipulation/transformPoints/transformPoints.C
@@ -37,6 +37,10 @@ Description
 Usage
     Options are:
 
+    -time value
+        Specify the time to search from and apply the transformation
+        (default is latest)
+
     -translate vector
         Translates the points by the given vector before rotations
 
@@ -155,6 +159,13 @@ int main(int argc, char *argv[])
         "Note: roll=rotate about x, pitch=rotate about y, yaw=rotate about z"
     );
     argList::addOption
+    (
+        "time",
+        "time",
+        "Specify the time to search from and apply the transformation"
+        " (default is latest)"
+    );
+    argList::addOption
     (
         "translate",
         "vector",
@@ -248,6 +259,19 @@ int main(int argc, char *argv[])
         meshDir = regionName/polyMesh::meshSubDir;
     }
 
+    if (args.found("time"))
+    {
+        if (args.opt("time") == "constant")
+        {
+            runTime.setTime(instant(0, "constant"), 0);
+        }
+        else
+        {
+            scalar timeValue = args.opt<scalar>("time");
+            runTime.setTime(instant(timeValue), 0);
+        }
+    }
+
     pointIOField points
     (
         IOobject