If your floors have high and low spots that are not a structural problem, you’ll want to level out these areas before you lay your flooring.
Start by making sure your wood subfloor is securely fastened to the joists. Use a long straight edge, like a long level or a straight pipe, and mark out the high and low areas.
Sand down the high spots in the wood subfloor and thoroughly vacuum up the dust. Use a floor leveler or floor patch product to fix low spots in the wood subfloor.
Pour the leveler on top of the subfloor and smooth with a trowel making sure to feather the edges. Gravity will allow it to settle in the low areas. Follow the manufacturer directions on how to apply the leveller and how long it takes to dry.
When completely dry, sand down any high spots and thoroughly vacuum. Do a final check with your long straight edge and a level and make any necessary adjustments.
Use this same method for leveling a concrete floor except use a concrete grinder to level out high spots.