diff --git a/src/amdis/GridTransfer.hpp b/src/amdis/GridTransfer.hpp
index 98b9af7971f0e23758365f31ae58d62a921ed010..9c77d58f5d953328a4a094bb7c275d6c17dc8a54 100644
--- a/src/amdis/GridTransfer.hpp
+++ b/src/amdis/GridTransfer.hpp
@@ -81,6 +81,13 @@ namespace AMDiS
           vec->postAdapt(refined_);
       }
       grid_->postAdapt();
+      changeIndex_++;
+    }
+
+    /// Returns the grid change index, see \ref changeIndex.
+    unsigned long changeIndex() const
+    {
+      return changeIndex_;
     }
 
   private:
@@ -88,6 +95,10 @@ namespace AMDiS
     std::list<DOFVectorInterface*> data_;
     bool mightCoarsen_ = false;
     bool refined_ = false;
+
+    /// This index is incremented every time the grid is changed, e.g. by
+    /// refinement or coarsening.
+    unsigned long changeIndex_ = 0;
   };
 
 } // end namespace AMDiS