Never call QTableView::scrolltoBottom from slots connected to the model's rowsInserted signal because as the rows added they will start to appear partially:
![](images/scrolltobottom_in_rowsinserted.png)
Connect your slots to the QTableView::verticalScrollBar's rangeChanged signal
![](images/Screenshot_20230220_211709.png)
![](images/scrolltobottom_in_rowsinserted.png)
Connect your slots to the QTableView::verticalScrollBar's rangeChanged signal
![](images/Screenshot_20230220_211709.png)