Subjective, Objective, Assessment, Plan. It’s the structure every clinician learned in training, and it’s the structure every EHR defaults to. It’s also not how most visits actually unfold.

A patient walks in for a follow-up and mentions, halfway through a blood pressure check, that they’ve stopped taking a medication because of a side effect. That’s assessment-relevant information arriving in the middle of what should be the objective section. A parent brings in a toddler for a well-visit and spends the first four minutes talking about sleep, not growth. None of this fits neatly into four boxes filled in order.

When we built Tasrif’s note generation, the first version followed SOAP strictly, because that’s what everyone expects a clinical note tool to do. It produced notes that were technically complete and practically useless to edit — because the AI had to guess which sentence from a meandering conversation belonged in which box, and it guessed wrong often enough that reviewing the note took longer than writing one from scratch would have.

The fix wasn’t a smarter SOAP parser. It was letting the template match the visit type instead of forcing the visit into the template. A psychiatric intake and a five-minute suture check don’t need the same structure, and pretending they do is exactly what makes AI-generated notes feel like they were written by something that’s never actually seen a patient.

Templates in Tasrif are built per specialty and per visit type for this reason. It’s more setup work upfront than shipping one universal form. It’s also the difference between a note you sign off in under a minute and one you rewrite.