We present a model for describing the growth of students’ understandings when reading a proof. The model is composed of two main paths. One is focused on becoming aware of the deductive structure of the proof, in other words, understanding the proof at a semantic level. Generalization, abstraction, and formalization are the most important transitions in this path. The other path focuses on the surface-level form of the proof, and the use of symbolic representations. At the end of this path, students understand how and why symbolic computations formally establish a claim, at a syntactic level. We make distinctions between states in the model and illustrate them with examples from early secondary students’ mathematical activity. We then apply the model to one student’s developing understanding in order to show how the model works in practice. We close with some suggestions for further research.