diff --git a/pkg/promtail/targets/tailer.go b/pkg/promtail/targets/tailer.go
index 473e98b8ec1719cce6b6f1ed809978ab1ea82d92..76da80356eacf09632f9742822e796800180b141 100644
--- a/pkg/promtail/targets/tailer.go
+++ b/pkg/promtail/targets/tailer.go
@@ -119,7 +119,7 @@ func (t *tailer) markPosition() error {
 		return err
 	}
 
-	readBytes.WithLabelValues(t.path).Add(float64(pos))
+	readBytes.WithLabelValues(t.path).Set(float64(pos))
 	level.Debug(t.logger).Log("path", t.path, "filename", t.filename, "current_position", pos)
 	t.positions.Put(t.filename, pos)
 	return nil