With careful consideration of the appropriate solution for your uneven floor problem, you should end up with a perfectly flat overall covering. It is usually best to tackle the problem at the flooring sub-level, which is above the original flooring and underneath the surface covering. As well as eliminating a potential health hazard from accidental trips and falls, top coverings will wear better and live longer if you even up the flooring at the sub-level. Coverings laid on uneven surfaces can wear in a patchy manner. Also, tables and chairs stand more firmly, without any annoying rocking, on a solid, level floor.
Install a carpet pad if your problem is minimal or if you only need a temporary solution. This may work for you if you are renting, for instance, and won't be replacing the carpet next time. Carpet pads are a type of underlay. If the unevenness in the floor is minimal, they create enough padding under the top carpet to help it lay flat. After a while, unfortunately, carpet pads will wear in an uneven way due to the uncorrected flooring underneath them, recreating the original problem.
Measure the approximate difference in flooring levels in several places throughout the room once the top flooring covering is removed. This will give you an idea of how big a problem you have and, consequently, how serious a solution you will need.
Lay plywood sheeting as a sub-floor layer. This can level the base floor quite efficiently if the problem is not severe and the overall level of the floor is fairly consistent. Use thicker plywood the more uneven the flooring is underneath.
Flatten out uneven floors using specially designed self-leveling compounds. These usually come in powder form, which you will need to mix with water. Cover uneven areas and they will settle and form a flat surface. There are many ways to make concrete look good as a surface flooring material nowadays, with concrete dyes and staining as well as stamps to create patterning. If you want a concrete surface, you can actually finish the flooring job with a self-leveling concrete overlay. This will correct the unevenness at the same time as becoming the surface flooring.
Grind, chisel, sand or shim old floor bases to make them more level. These measures might be necessary on a severely uneven floor, in a very old house for example. You can grind down bumpy old masonry or concrete flooring with a powered grinding tool. Use chisels and power sanders to take off higher parts on wooden floor bases. Shimming involves making gap-fillers, usually wedge-shaped pieces of wood, to fit into places where the flooring slopes downward, causing the unevenness. The shaped fillers are cut at an angle to negate the sloping that is causing the unevenness. A plywood sub-level underneath the surface floor covering will usually complete the leveling job quite nicely.