when I am not placing a trace, if a pad is not on the grid even with magnetic points ‘ALWAYS’ for pads, the cursor does not show the cursor snapped on the pad, this only shows after you start placing the trace. In a crowded layout, you want to know exactly where the trace is going to start, not after you’ve started, it might snap to the wrong trace. then you have to stop, back or delete etc.
I beleive that magnetic snap behaviour should be visible always so you can see what the tool is going to snap onto, start a trace, place a via on etc before it commits. per other post snap control needs to be available for all objects, and from a panel so one can quickly suspend routing, change the snap, and then unsuspend and continue. If the board is not dense, you might not see this need.
For drawing graphical items (line/rectangle/circle) this is already implemented, so could be worth a gitlab feature request to implement this also for the router.
Albeit I’m not sure if this will help or if this will disturb (due to constantly jumping snap indicator) the concentration.
The first time you press x to start a track (trace) this does not show, because before you pressed the key there was no routing function active. If you’ve finished a previous track (trace) and the routing function is still active, the small cross cursor jumps to a center of a pad as a snap point before you start routing.
But it’s true that when there is no function active, KiCad does not snap to pads. This also has consequences for moving footprints. Take for example a 0.1" header and you want to align pin 6 of it on a 10mm grid. At the moment it is difficult to select the right pin to grab it when the pin pitch is smaller then the selected grid. I recently re-opened a n older issue for this on gitlab, and it is now marked to be fixed in V8.0.1 At the moment the focus is on bug fixing and stability to get V8.0.0 released in February.