diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.C b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.C
index cb98b44adc55ccdd14bd12dbd9cd9a25c8179fef..08b09cf34f299b6aaf1493db85bf984b9054fa1b 100644
--- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.C
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.C
@@ -231,6 +231,7 @@ Foam::KinematicParcel<ParcelType>::KinematicParcel
     angularMomentum_(p.angularMomentum_),
     torque_(p.torque_),
     rho_(p.rho_),
+    age_(p.age_),
     tTurb_(p.tTurb_),
     UTurb_(p.UTurb_),
     collisionRecords_(p.collisionRecords_),
@@ -257,6 +258,7 @@ Foam::KinematicParcel<ParcelType>::KinematicParcel
     angularMomentum_(p.angularMomentum_),
     torque_(p.torque_),
     rho_(p.rho_),
+    age_(p.age_),
     tTurb_(p.tTurb_),
     UTurb_(p.UTurb_),
     collisionRecords_(p.collisionRecords_),
@@ -344,6 +346,8 @@ bool Foam::KinematicParcel<ParcelType>::move
                         td.switchProcessor = true;
                     }
                 }
+
+                p.age() += dt;
             }
 
             break;
diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H
index 011fb421c7547ce2f5ee2f9093b1d1ca68d08bca..3855b707a2b51970296269d4797e7b1a5bd12c5b 100644
--- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H
@@ -267,6 +267,9 @@ protected:
             //- Density [kg/m3]
             scalar rho_;
 
+            //- Age [s]
+            scalar age_;
+
             //- Time spent in turbulent eddy [s]
             scalar tTurb_;
 
@@ -430,6 +433,9 @@ public:
             //- Return const access to density
             inline scalar rho() const;
 
+            //- Return const access to the age
+            inline scalar age() const;
+
             //- Return const access to time spent in turbulent eddy
             inline scalar tTurb() const;
 
@@ -472,6 +478,9 @@ public:
             //- Return access to density
             inline scalar& rho();
 
+            //- Return access to the age
+            inline scalar& age();
+
             //- Return access to time spent in turbulent eddy
             inline scalar& tTurb();
 
diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H
index 44c354beb23a6c3ff134ec53986ba538e61aeee0..447f91381f2767bb76d82d21063cc3445a781484 100644
--- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H
@@ -104,6 +104,7 @@ inline Foam::KinematicParcel<ParcelType>::KinematicParcel
     angularMomentum_(vector::zero),
     torque_(vector::zero),
     rho_(0.0),
+    age_(0.0),
     tTurb_(0.0),
     UTurb_(vector::zero),
     collisionRecords_(),
@@ -143,6 +144,7 @@ inline Foam::KinematicParcel<ParcelType>::KinematicParcel
     angularMomentum_(angularMomentum0),
     torque_(torque0),
     rho_(constProps.rho0()),
+    age_(0.0),
     tTurb_(0.0),
     UTurb_(vector::zero),
     collisionRecords_(),
@@ -345,6 +347,13 @@ inline Foam::scalar Foam::KinematicParcel<ParcelType>::rho() const
 }
 
 
+template<class ParcelType>
+inline Foam::scalar Foam::KinematicParcel<ParcelType>::age() const
+{
+    return age_;
+}
+
+
 template<class ParcelType>
 inline Foam::scalar Foam::KinematicParcel<ParcelType>::tTurb() const
 {
@@ -437,6 +446,13 @@ inline Foam::scalar& Foam::KinematicParcel<ParcelType>::rho()
 }
 
 
+template<class ParcelType>
+inline Foam::scalar& Foam::KinematicParcel<ParcelType>::age()
+{
+    return age_;
+}
+
+
 template<class ParcelType>
 inline Foam::scalar& Foam::KinematicParcel<ParcelType>::tTurb()
 {
diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelIO.C b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelIO.C
index 8aec46288b3a77d7763a493e6bc54ecd8f011054..c8562613d913bf9c7ae1f7d226096b2a9d0a7f2a 100644
--- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelIO.C
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelIO.C
@@ -43,6 +43,7 @@ Foam::string Foam::KinematicParcel<ParcelType>::propHeader =
   + " (angularMomentumx angularMomentumy angularMomentumz)"
   + " (torquex torquey torquez)"
   + " rho"
+  + " age"
   + " tTurb"
   + " (UTurbx UTurby UTurbz)"
   + " collisionRecordsPairAccessed"
@@ -75,6 +76,7 @@ Foam::KinematicParcel<ParcelType>::KinematicParcel
     angularMomentum_(vector::zero),
     torque_(vector::zero),
     rho_(0.0),
+    age_(0.0),
     tTurb_(0.0),
     UTurb_(vector::zero),
     collisionRecords_(),
@@ -96,6 +98,7 @@ Foam::KinematicParcel<ParcelType>::KinematicParcel
             is >> angularMomentum_;
             is >> torque_;
             rho_ = readScalar(is);
+            age_ = readScalar(is);
             tTurb_ = readScalar(is);
             is >> UTurb_;
             is >> collisionRecords_;
@@ -115,6 +118,7 @@ Foam::KinematicParcel<ParcelType>::KinematicParcel
               + sizeof(angularMomentum_)
               + sizeof(torque_)
               + sizeof(rho_)
+              + sizeof(age_)
               + sizeof(tTurb_)
               + sizeof(UTurb_)
             );
@@ -175,6 +179,9 @@ void Foam::KinematicParcel<ParcelType>::readFields(Cloud<ParcelType>& c)
     IOField<scalar> rho(c.fieldIOobject("rho", IOobject::MUST_READ));
     c.checkFieldIOobject(c, rho);
 
+    IOField<scalar> age(c.fieldIOobject("age", IOobject::MUST_READ));
+    c.checkFieldIOobject(c, age);
+
     IOField<scalar> tTurb(c.fieldIOobject("tTurb", IOobject::MUST_READ));
     c.checkFieldIOobject(c, tTurb);
 
@@ -246,6 +253,7 @@ void Foam::KinematicParcel<ParcelType>::readFields(Cloud<ParcelType>& c)
         p.f_ = f[i];
         p.angularMomentum_ = angularMomentum[i];
         p.rho_ = rho[i];
+        p.age_ = age[i];
         p.tTurb_ = tTurb[i];
         p.UTurb_ = UTurb[i];
         p.collisionRecords_ = collisionRecordList
@@ -289,6 +297,7 @@ void Foam::KinematicParcel<ParcelType>::writeFields(const Cloud<ParcelType>& c)
     );
     IOField<vector> torque(c.fieldIOobject("torque", IOobject::NO_READ), np);
     IOField<scalar> rho(c.fieldIOobject("rho", IOobject::NO_READ), np);
+    IOField<scalar> age(c.fieldIOobject("age", IOobject::NO_READ), np);
     IOField<scalar> tTurb(c.fieldIOobject("tTurb", IOobject::NO_READ), np);
     IOField<vector> UTurb(c.fieldIOobject("UTurb", IOobject::NO_READ), np);
 
@@ -348,6 +357,7 @@ void Foam::KinematicParcel<ParcelType>::writeFields(const Cloud<ParcelType>& c)
         angularMomentum[i] = p.angularMomentum();
         torque[i] = p.torque();
         rho[i] = p.rho();
+        age[i] = p.age();
         tTurb[i] = p.tTurb();
         UTurb[i] = p.UTurb();
         collisionRecordsPairAccessed[i] = p.collisionRecords().pairAccessed();
@@ -373,6 +383,7 @@ void Foam::KinematicParcel<ParcelType>::writeFields(const Cloud<ParcelType>& c)
     angularMomentum.write();
     torque.write();
     rho.write();
+    age.write();
     tTurb.write();
     UTurb.write();
     collisionRecordsPairAccessed.write();
@@ -407,6 +418,7 @@ Foam::Ostream& Foam::operator<<
             << token::SPACE << p.angularMomentum()
             << token::SPACE << p.torque()
             << token::SPACE << p.rho()
+            << token::SPACE << p.age()
             << token::SPACE << p.tTurb()
             << token::SPACE << p.UTurb()
             << token::SPACE << p.collisionRecords();
@@ -427,6 +439,7 @@ Foam::Ostream& Foam::operator<<
           + sizeof(p.angularMomentum())
           + sizeof(p.torque())
           + sizeof(p.rho())
+          + sizeof(p.age())
           + sizeof(p.tTurb())
           + sizeof(p.UTurb())
         );