ag-Grid is fast. However ag-Grid can also be configured and extended in many ways. Often people come to the ag-Grid forum and ask 'why is the grid in my application not that fast?'. This page explains how you can make the grid go faster.
ag-Grid can be as fast as demonstrated in the demo application Demo Application. You can resize the demo application to the same size as the grid in your application by resizing the browser. Then navigate around the grid (scroll, filter etc) and see how fast the demo grid is compared to your own implementation. If the demo grid is going faster, then there is room for performance improvements.
ag-Grid can be slowed down by your custom cell renderer's. To test this, remove all cell renderer's from your grid and compare the speed again. If the grid does improve it's speed by removing cell renderers, try to introduce the cell renderer's one by one to find out which ones are adding the most overhead.
The fastest cell renderer's have the following properties:
Row and column animations make for a great user experience. However not all browsers are as good at animations as others. Consider checking the client's browser and turning off row and column animation for slower browsers.
rowBuffer property sets the number of rows the grid renders outside of the viewable area.
The default is 10.
For example, if your grid is showing 50 rows (as that's all the fits on your screen without scrolling),
then the grid will actually render 70 in total (10 extra above and 10 extra below). Then when you scroll
the grid will already have 10 rows ready waiting to show so the user will not see a redraw (not all browsers
show the redraw, only the slower ones).
Setting a low row buffer will make initial draws of the grid faster (eg when data is first loaded, or after filtering, grouping etc). Setting a high row buffer will reduce the redraw visible vertically scrolling.
The grid works fastest on Google Chrome. If you can, tell your users.