When I revert a regular tabulated-list-mode buffer, the point stays the same, and the displayed buffer boundaries remain the same as well. However, when the entries in tabulated-list-entries contain strings that are too long and will be truncated, reverting such buffer will scroll the screen by one line. To see this behavior, evaluate in emacs -Q, then type g: (with-current-buffer (generate-new-buffer "test") (require 'cl-lib) (tabulated-list-mode) (setq tabulated-list-format [("No." 5) ("Message" 10)]) (let ((message (make-string 100 ?a))) (setq tabulated-list-entries (cl-loop for i from 1 to 100 collect `(,i [,(number-to-string i) ,message])))) (tabulated-list-init-header) (revert-buffer) (forward-line 50) (pop-to-buffer (current-buffer)) (recenter)) You can also see that if the lines are not truncated, the behavior is correct. In GNU Emacs 26.3.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.5) of 2019-10-08 built on debian Repository revision: 55dcd32ad2209dc34bfb6b713bf73be9bf4c4cb2 Windowing system distributor 'The X.Org Foundation', version 11.0.12004000 System Description: Debian GNU/Linux 10 (buster) -- MichaƂ Krzywkowski PGP: A5A7 06C4 28EF 8F64 2868 13A1 7BDE C129 F0B8 09A1