Automated planning is a prominent area of Artificial Intelligence, and animportant component for intelligent autonomous agents. A cornerstone ofdomain-independent planning is the separation between planning logic, i.e. theautomated reasoning side, and the knowledge model, that encodes a formalrepresentation of domain knowledge needed to reason upon a given problem tosynthesise a solution plan. Such a separation enables the use of reformulationtechniques, which transform how a model is represented in order to improve theefficiency of plan generation. Over the past decades, significant researcheffort has been devoted to the design of reformulation techniques. In thispaper, we present a systematic review of the large body of work onreformulation techniques for classical planning, aiming to provide a holisticview of the field and to foster future research in the area. As a tangibleoutcome, we provide a qualitative comparison of the existing classes oftechniques, that can help researchers gain an overview of their strengths andweaknesses.