Lately, I have been going through statement-of-purpose (SOP) drafts for many UCLA undergraduates, and I have been giving them comments on it.
As a note, I am gearing this predominantly towards mathematics and applied mathematics. In the mathematical sciences in the US, one typically applies directly to graduate programs, rather than to individual faculty members. That entails much freedom in what one wants to work on (in contrast to, e.g., applying to a known project with known funding). Many of my comments should be relevant more broadly, but I wanted to give you this "Surgeon General's Warning" first, as some comments apply most directly to mathematical-science contexts (and especially in the US, as one also often applies directly to faculty or to more specific things in the mathematical sciences in other countries). Also, some parts of what I am writing are more for PhD programs than for Master's programs, but largely these ideas apply to both, aside from certain specifics (such as writing what person you may want as a PhD mentor).
Our students rightly view these documents as pretty mysterious, and these drafts often seem to be presented as chronologies of past experiences. That's not the point, and there is a resume/CV for such things anyway. Some past highlights are certainly relevant, but they need to be in the context of what the student wants to do now, how they got to where they are now and what they want to do, and how this relates to where they are going forward (including the context of the specific university where they are applying to do it). It is common to see too much detail and also to see mind-numbing timelines without the important context. The document should be present-looking and forward-looking.
When I am giving comments on my students' SOPs (along with more general advice on them), the way that I frame this document is as follows:
(1) The document should start with a terse statement of the student's current goal, at whatever level of specificity is accurate for that student. The analogy that I give is the start of a movie, such as an action movie. We start right in the middle of things (possibly in a really tense situation for our hero), and we don't know how they got there. That is also how an SOP should start. For example, I knew that I wanted to do a PhD in applied mathematics (so I applied to PhD programs in applied mathematics and more generally in mathematics) and that I wanted to study something (but I didn't know what) in the topic of dynamical systems. So that is what I said.
(2) One then needs to back up, as in an action movie, and briefly explain/summarize how we got to this point. The chronology and past highlights — including small bits of relevant experience and expertise, but don't overdue it and go at length into too much detail (because you're also submitting a transcript and a resume) — are part of this "backing up" process, but they should specifically be in the context of where one is now. I briefly discussed relevant courses that I had taken and also relevant undergraduate research projects (such as a summer project in geometric mechanics), but again not in too much detail. The idea is to convey how your current interest and goals developed, and past highlights (very specific parts of your personal chronology) can help do that.
(3) Now we have caught up to where our hero is now, and a reader of an SOP has caught up to where the applicant is now. Now you can briefly explain what topics you may want to explore now. That may be a continuation of a subtopic from before, it may be another topic in the same general area, it may be certain applications of that area, or it may be a progression to an adjacent area. Additionally, you don't need to know exactly what you want. Write this bit at whatever level of specificity gives an honest statement of where you are now. If you don't know what you want to work on, it's worth noting that some graduate programs are much more flexible than others. The specificity of what you think you want to work on may influence where you want to apply. Also, notice that I wrote "what you think you want to work on". Your interests will change. Maybe you'll learn about new topics that you didn't encounter before. Maybe some person who seems like a particularly great mentor is another area. Maybe something goes wrong with your intended mentor — unfortunately, this happens way too often — and your interests may change. Flexibility can be a major benefit of a graduate program. In my case, I don't particularly remember what I wrote here, but I expect that mostly just said that I wanted to continue doing dynamical systems. This then leads to connecting these goals and interests to the particular program to which you're applying. That is the next item.
(4) Now you need to briefly indicate why you are a good fit for the specific program to which you're applying, and vice versa. This often takes the form of a short paragraph that is somewhat different for each program to which you apply. For a given type of program (e.g., a PhD program in Mathematics), items (1)--(3) are mostly the same for all of your SOPs. If some programs are slightly different (e.g., some PhD programs and some Master's programs), then there could be two somewhat different versions. In this example, that is one basic one for the Master's programs and one basic one for the PhD programs. OK, I have digressed a bit, so I'll get back to item (4). It's good to indicate in general terms why that program is a good fit for you. In my case, my typical reason was that I wanted to go to places that were both generically "top schools" (where I note the various issues and complications of such a designation) and that were also really strong in applied dynamical systems. For example, that's why I chose to go to Cornell in applied mathematics. For PhD programs, it is also good to indicate potential PhD mentors; indicate who may be a good fit and why. This can simply be a matter of their work being intriguing, but it's good to indicate more direct potential overlap in scientific interests. If possible, listing at least two faculty members is good, and if there is only one person of interest to you, that often may not be the best program choice for you anyway. (See, e.g., my comment above about situations when there are issues with a supervisor.) When the SOP is examined by a committee, the presence of those names may increase the chance that somebody reading your application shows it to those people to ask their views. I have certainly gotten such requests (maybe a handful each year in most years) from my colleagues before. It also shows that you actually looked at the program website and did your homework. That's not bad to convey. Additionally, if there is anything else about the program that appeals to you, it is relevant to briefly mention that as well.
(5) Finally, you're ready to conclude. The movie (i.e., SOP) is about to end, and we need a denouement and the document to end. If you have any thoughts about what you want to do after you get your degree, indicate so. If there is a particular way that the university to which you're applying will help you get there, say that. I think that it's typically best for this text to take the form of a short paragraph. Many people don't know, and that is absolutely fine! But if you do know, it is useful to indicate it. I wanted to go on from my PhD program to a postdoc and then a faculty job, so that's what I said. One can also say that one wants to go to industry, a national lab, do data science for a nonprofit, or whatever else. One can also indicate a couple of these as possibility, since why should most people actually know definitively at this stage.
Good luck!
Note: If I didn't address anything that you feel that would be helpful for me to write in this blog entry, let me know, and I'll add something about it. Or, if I have nothing to say, I can at least remark that the issue exists and point out that I have nothing personal to add.