Producing valuable transportation fuels from shale oil has long been a goal among the industries concerned, but to meet modern environmental regulations a significant upgrading is required involving removing heteroatoms from it. The quantity of sulfur, nitrogen and oxygen in shale oil is one of the major obstacles to its wider use. Unlike petroleum whose upgrading consists mainly in desulfurization, for shale oils denitrification and deoxygenation are also important. This review compiles and summarizes the extensive research that has been performed on removing sulfur, nitrogen and oxygen from shale oil. By far the most widely investigated method has been hydrotreatment, but the results of work done with other methods are also presented.