This tutorial explains how to disable the dynamic grid size adjustment in Blender. It also teaches you how to snap to a custom grid size in 2D and 3D viewports.
The problem with Blender’s grid snapping
If you move an object in the 3D viewport with grid snapping enabled, it will always snap to increments of 1 meter or 1 inch, depending on your unit settings. You can hold Shift to snap to a tenth of that size. You can also set a different Scale in the Overlays menu in the top right corner to modify your grid size with a factor.
The grid size in 2D viewports changes dynamically depending on your zoom level. It ignores the Scale value from the Overlays menu.
Change Blender’s Unit System from Metric or Imperial to None to use a consistent and fixed grid scale. This setting is located in the vertical Properities panel on the right, in the Scene Properties category under Units.
Open the Overlays menu in the top right corner again now you’ll see that the Subdivisions field is no longer grayed out. Set it to 1 to disable the automatic grid size change in 2D viewports. Set the Scale to the grid size you’d like to snap to. I’ve changed it from 1 to 8 on the screenshot.
1 generic units equals 1 meter. If you are working in imperial units, convert your preferred grid size from feet to meters and use this value as your Scale.
Visit the Blender Tutorials main page for more Blender tutorials.