diff --git a/reading_machine/src/Action.cpp b/reading_machine/src/Action.cpp
index a5592db340af4aa95eda5914eee63859d0fe05bf..d99e4f4352bdda2bd7eecb45cb1493fb46149b35 100644
--- a/reading_machine/src/Action.cpp
+++ b/reading_machine/src/Action.cpp
@@ -80,10 +80,10 @@ Action Action::consumeCharacterIndex(util::utf8string consumed)
 {
   auto apply = [consumed](Config & config, Action &)
   {
-    config.moveCharacterIndex(consumed.size());
-
     config.getLastNotEmptyHyp(Config::rawRangeStartColName, config.getWordIndex()) = fmt::format("{}", config.getCharacterIndex());
     config.getLastNotEmptyHyp(Config::rawRangeEndColName, config.getWordIndex()) = fmt::format("{}", config.getCharacterIndex() + consumed.size());
+
+    config.moveCharacterIndex(consumed.size());
   };
 
   auto undo = [consumed](Config & config, Action &)