Here you can request help, make suggestions, give criticism, submit feature requests, post corrections, and add any other polite comments you’d like the world to see.
Hi – I’ve been looking into this, but I’ve not been able to determine the cause that the ‘Save as HTML file’ stopped working. It may be a security issue with the software framework. If you noticed when it stopped working, that would be helpful. I’ll post a reply if I can get it working again.
SOAPnotesays:
Hi – I think it’s a web security issue with html files. I removed the feature. I’m really sorry for the inconvenience.
alphabioticsays:
Hi Mark,
Having lots of problems logging in with Internet Explorer. It often asks me to solve capture but there isn’t a capture to solve. Then after several attempts of repeating the login, it suddenly ‘decides’ to log me in. Also, when I tried setting up a second account, for a colleague where I work to use, we are stuck in a reset password loop where it reports the “the passwords don’t match” however there is only a single password field so we are not sure what it’s referring to — meaning what doesn’t it match to? It’s a new password so obviously won’t match anything. Can you please help with these. Kind regards.
SOAPnotesays:
Hi, It should be working now. Let me know if you’re still having problems.
Michelleb72says:
I revised a Psych Inital assessment from another user, to include more detailed “Developmental History” information. However, now it won’t calculate the results. I have looked through it and thought I caught the mistakes, but I must be missing something. Help!
Mark Morgansays:
Hi – it looks like you might have got it working and it calculates results. Feel free to let me know if there are other concerns.
scoobie69dsays:
so on my note entitled ‘work in process’ I’m having trouble getting it to process. I fill in a all the spots. run the report, but it does not run as entered. some spots don’t save the data entered. some spots just copy to another area in the report. some data entered just doesn’t carry over. any input?
keaunasays:
i need help! my soap notes wont calculate results !
Mark Morgansays:
Which one are you talking about?
bcwelchsays:
Thank you for this site…great tool! Is there a way to assign a value within a condition statement? For example…
[conditional field="gender" condition="(gender).is('male')"] —- ASSIGN VALUE ‘HE’ to Variable PRONOUN here — [/conditional]
OR maybe…
[conditional field="gender" condition="(gender).is('male') ---- ASSIGN VALUE 'HE' to Variable PRONOUN here --- "] [/conditional]
bcwelchsays:
For anyone who’s interested (tho it’s a little ‘clunky’), I guess this would be one way to handle it:
[var name="subjective"] did a great job tying [var name="possessive"] shoes instead of having it done for [var name="objective"].
melimira91says:
Hello! thank you SO much for this site!! I’m a student and its been super helpful for documenting my case logs for school. I ahve a question though, is there a way to have a checkbox/checklist pre-checked already? i.e. I want my checkboxes/checklists to automatically have “negative” as checked and then I change it as needed instead of having to check it myself every time. Is there a way to do that?
Mark Morgansays:
That’s a good idea. I can look into adding the feature.
jedijeffsays:
ive having trouble to get my form to calculate results im sure its something i’ve done but can’t figure it out
jedijeffsays:
never mind I figured it out just took some time to over it line by line.
Grea site
Ashleysays:
How do I save a SOAP note that I like to “My SOAPnotes”?
Mark Morgansays:
I think what a lot of people do is the following: 1) Make sure you’re logged on and on the page that you want to save. 2) Click on ‘View’ on the upper right of the SOAP note. 3) Select ‘Edit Markup’ 4) Click on ‘Duplicate’ 5) Then you can save it to your account and rename it and change it as you’d like.
Binti Jonessays:
Hi Mark, great site, I love it. Can you please help with my private templates? When I click to see “my soapnotes” I get an error 404.
I am having difficulty getting it to calculate results – can you help?
emergencymomsays:
Can anyone help?
Mark Morgansays:
What page are you having trouble with?
emergencymomsays:
I created a H & P and I am trying to run it, inputting information and it does not calculate anything at the bottom when I ask it to calculate
Mark Morgansays:
Hi – if you add a comment on the page you need help with, I can look into it.
keaunasays:
I am having the same issue, did you figure out why your note wouldn’t calculate?
kachangmdsays:
Hi Mark, Is there a way we could get a ‘time’ timestamp similar to the ‘date’ timestamp. Useful when making entries into the ED course.
lsanchezgsays:
tHANK YOU FOR THIS WONDERFUL SITE. CAN YOU TELL ME HOW TO LINK TOGETHER DIFFERENT PARTS – HISTORY, PHYSICAL, a/p, INTO ONE TEMPLATE?
marnold2777says:
My perspective – It depends on how complicated your coding is (specifically conditional elements) and how much verbiage total. You can copy and paste many elements (history, physical, a/p) into one template and it will run. I’ve noticed the site reaches it’s limit and becomes very sluggish to run at around 750 elements (you can figure out how many elements your template has by running it in the ‘create/edit’ tool (it shows in a popup when you click ‘run’). If you find you have too much for one template, you can add links in your template that open other templates.
Is there a way to create a date stamp that defaults to a future date (like a ‘today’ + # days function)? The purpose for me would be creating a better Depo-Provera note that auto-sets the next depo window range (11 and 15 weeks, which would be easy to convert to #days for a default stamp if available)
Awesome! I’ve just implemented this and now have depo shot documentation that auto-calculates the window. Thanks!
marnold2777says:
Help. I can’t get to my favorited templates or the ones I’ve created without manually searching for them. I precious could the hyperlink of the author’s name to view all their templates. It no longer works. It also doesn’t work when clicking ‘my soapnotes’
Mark Morgansays:
Hi, I will work on this today (2/27/20). Everything should work except the ‘favorite’ feature. It was breaking another part of the site after an update. Sorry for the inconvenience, I tried to avoid taking it out.
Mark Morgansays:
it is working properly now – I am sorry about the ‘favorite’ feature being discontinued.
marnold2777says:
Thanks.
marnold2777says:
Can you fix the navigation issues with the site? – when I click on ‘my soapnotes’, I get a different screen than shows all users but does not show any of my templates. The same thing happens when clicking on an author’s name.
Mark Morgansays:
Hi – sorry – I’ll try to fix it today (2/27/20). I removed the ‘favorite’ feature because it was breaking the site with another update. A lot of moving parts. The page with the soapnote you’ve authored will be back up soon.
teribsays:
I am having trouble when I ‘calculate result’. It is not working.
Mark Morgansays:
Hi – I think it’s that a variable name can’t have spaces or punctuation. Try changing the lines — at the beginning [checkbox name="Reviewed old records." value="Reviewed old records."] to [checkbox name="Reviewedoldrecords" value="Reviewed old records."] and also — under ‘immunizations’ [checkbox name="Up to date" value="Up to Date."] to [checkbox name="Uptodate" value="Up to Date."]
Then I think it should work.
Dariosays:
Can I fork this on github?
Mark Morgansays:
Thank you for the question. The site is open to anyone to use for free, and the code for the site is pretty low-tech. But it’s not open source.
kachangmdsays:
Is there anyway to have a timestamp button much like the date button but instead would enter the time of the entry?
is there away to edit EMS Narrative- FIRE/EMS notes to add or edit some of the fields
gwoodsays:
Forms do not calculate results. Could you please take a look at it
Mark Morgansays:
sorry – looking into it.
Mark Morgansays:
it’s working now. sorry about the delay.
kinditionsays:
thank you, great tool you are providing
gwoodsays:
Thank you so much. All works great!
kinditionsays:
All forms are broken, none produce output when Calculate Result clicked. Also, Twitter users cannot send messages to you unless you follow them first. You need to set it to Receive Messages from Anyone.
I’d provide examples, but frankly, I can’t find a single form that isn’t broken, so it’s all of them by extension.
Mark Morgansays:
sorry – looking into it.
Mark Morgansays:
it’s working now. sorry about the delay. also – I changed my twitter settings as you described.
dmergupesays:
I love your site! But it stopped working the calculate result button does not generate anything. I have tried multiple different templates please help! Thank you!!
wtgatewooddosays:
I’m having some trouble with it calculating the results with ALL the forms. Nothing pops up at the bottom.
emergencymomsays:
Did you get any clarity on what is happening. I am sure it is user error (mine) I just cant figure out what i am doing wrong
Mark Morgansays:
Hi – if there is a specific page that’s not working, let me know. I’ll take a look at it.
DrRosssays:
Love the site, writing progress notes for Dentistry is often overlooked and notes end up being very vague. I think documentation is so important, but writing a good note takes time. This speeds up that process, especially for normal patient encounters. Can we get a dental category added to the site? Hopefully more dental professionals will begin to use it.
Thanks, Ross
Mark Morgansays:
Dental category added – sorry for the delay.
[email protected]says:
Hi all,
My note is in psychiatriy under SOAP note 3. When I fill in all fields and generate, it doesn’t yield what I’ve put in. Instead it says “getting better” in many of the fields. Does anyone know why? Here is the text I had filled out.
discussed”]; energy levels are [select name="variable_1" value="Good|Fair|Poor|Terrible|Not discussed"]; concentration is [select name="variable_1" value="Good|Fair|Poor|Terrible|Not discussed"]. [textarea name="variable_1" default="sample text"] O: MSE Alert and Oriented: [select name="variable_1" value="x4|x3|x2|x1"] Appearance: [select name="variable_1" value="Appropriately dressed/well groomed|disheveled|inappropriately dressed|neglected"]. Attitude toward the therapist: [select name="variable_1" value="cooperative|guarded|suspicious|paranoid|paranoid|warm"]. Eye contact: [select name="variable_1" value="Good|Fair|Poor|Fleeting|Avoidant"]. Psychomotor activity: [select name="variable_1" value="retardation|agitation|none"]. Speech: [select name="variable_1" value="normal rate/normal volume|spontaneous|impoverished|pressured|aphasic|emotional|monotonous"]. Thought process: [select name="variable_1" value="linear, goal-directed, coherent|disorganized|incoherent|flight of ideas|racing thoughts|loose associations|perseverative|tangential|spontaneous"]. Thought Content: [text name="variable_1" default="sample text"]. Mood: [text name="variable_1" default="sample text"]. Affect: [select name="variable_1" value="congruent with mood, stable|blunted|flat|incongruent with mood"]. Perception: [select name="variable_1" value="No Hallucinations|Audio Hallucinations|Visual Hallucinations|Tactile Hallucinations|Olfactory Hallucinations|preocuppied with delusions|preocuppied with thoughts"]. Suicidal Ideation: [select name="variable_1" value="none present|passive ideation, no plans or intent|activally suicidal"]. Homicidal Ideation:[select name="variable_1" value="no homicidal ideation|current homicidal ideation"] Insight: [select name="variable_1" value="good|fair|poor"]. Judgement: [select name="variable_1" value="good|fair|poor"]
P: Patient was scheduled for an appointment on [text name="variable_1" default="sample text"]. Prognosis: At the time of writing, patient’s prognosis is [select name="variable_1" value="good|fair|poor|uncertain"] and continued treatment is [select name="variable_1" value="recommended|not recommended|Cdsds"].
Mark Morgansays:
Hi – sorry for the delay in replying It has to do with the ‘variable_1’ name for all the variables. If you change them, it works the way you want (I think):
S: Patient reports things have been [select name="variable_1" value="getting better|getting worse|just about the same"] since the last visit.
Neurovegetative Symptoms: sleep is [select name="variable_2" value="Good|Fair|Poor|Terrible|Not discussed"]; appetite is [select name="variable_3" value="Good|Fair|Poor|Terrible|Not discussed"]; energy levels are [select name="variable_4" value="Good|Fair|Poor|Terrible|Not discussed"]; concentration is [select name="variable_5" value="Good|Fair|Poor|Terrible|Not discussed"].
P: Patient was scheduled for an appointment on [text name="variable_23" default="sample text"]. Prognosis: At the time of writing, patient’s prognosis is [select name="variable_24" value="good|fair|poor|uncertain"] and continued treatment is [select name="variable_25" value="recommended|not recommended|Cdsds"]. [textarea name="variable_26" default="sample text"]
kachangmdsays:
Dear Dr. Morgan, Can we get a ‘timestamp’ function similar to the ‘date’ function?
Mark Morgansays:
Hi – That’s a good idea. I will look into it. Sincerely, Mark Morgan
Mark Morgansays:
Timestamp function added. It puts in current date and time into the field. It’s about time!
gwoodsays:
Dear Dr Morgan, Thank you kindly for your help! Great teaching template material too! Best regards, George
Total Score –> [calc value="score=(Q1)+(Q2)+(Q3)+(Q4)+(Q5)+(Q6)+(Q7)+(Q8)+(Q9)" memo="score"] out of 9 points Interpretation –> [calc value="score=(Q1)+(Q2)+(Q3)+(Q4)+(Q5)+(Q6)+(Q7)+(Q8)+(Q9);score>3?'Medium to High risk':score>0?'Low risk'" memo="interpretation"]
Sub Score –> [calc value="score1=(Q5)+(Q6)+(Q7)+(Q8)+(Q9)" memo="score1"] out of 5 points Interpretation –> [calc value="score1=(Q5)+(Q6)+(Q7)+(Q8)+(Q9);score1>3?'High risk':score1>0?'Medium risk'" memo="interpretation"]
The Keele STarT Back Screening Tool. [select name="Q1" value="Disagree (0 points)=0|Agree (1 points)=1"] <– My back pain has spread down my leg(s) at some time in the last 2 weeks (over the last two weeks)? [select name="Q2" value="Disagree (0 points)=0|Agree (1 points)=1"] <– I have had pain in the shoulder or neck at some time in the last 2 weeks (over the last two weeks)? [select name="Q3" value="Disagree (0 points)=0|Agree (1 points)=1"] <– I have only walked short distances because of my back pain (over the last two weeks)? [select name="Q4" value="Disagree (0 points)=0|Agree (1 points)=1"] <– In the last 2 weeks, I have dressed more slowly than usual because of back pain (over the last two weeks)? [select name="Q5" value="Disagree (0 points)=0|Agree (1 points)=1"] <– It’s not really safe for a person with a condition like mine to be physically active (over the last two weeks)? [select name="Q6" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Worrying thoughts have been going through my mind a lot of the time (over the last two weeks)? [select name="Q7" value="Disagree (0 points)=0|Agree (1 points)=1"] <– I feel that my back pain is terrible and it’s never going to get any better (over the last two weeks)? [select name="Q8" value="Disagree (0 points)=0|Agree (1 points)=1"] <– In general I have not enjoyed all the things I used to enjoy (over the last two weeks)? [select name="Q9" value="Not at all (0 points)=0|Slightly (0 points)=0|Moderately (0 points)=0|Very much (1 points)=1|Extremely (1 points)=1"] [calc value="score=(Q1)+(Q2)+(Q3)+(Q4)+(Q5)+(Q6)+(Q7)+(Q8)+(Q9)" memo="score"] out of 9 points Interpretation –> [calc value="score=(Q1)+(Q2)+(Q3)+(Q4)+(Q5)+(Q6)+(Q7)+(Q8)+(Q9);score>3?'Medium to High risk':score>0?'Low risk'" memo="interpretation"]
Sub Score –> [calc value="score1=(Q5)+(Q6)+(Q7)+(Q8)+(Q9)" memo="score1"] out of 5 points Interpretation –> [calc value="score1=(Q5)+(Q6)+(Q7)+(Q8)+(Q9);score1>3?'High risk':score1>0?'Medium risk'" memo="interpretation"]
Mark Morgansays:
First – I set a value for the two different question types and then mapped out the values: Questions 1-4 at 1 point each Questions 5-9 at 100 points each (I chose 100 points arbitrarily, anything over 10 would probably work)
Possible combinations and risk values mapped out: 0… subscore 0, Low Risk 1… subscore 0, Low Risk 2… subscore 0, Low Risk 3… subscore 0, Low Risk 4… subscore 0, Medium Risk 100… subscore 1, Low Risk 101… subscore 1, Low Risk 102… subscore 1, Low Risk 103… subscore 1, Medium Risk 104… subscore 1, Medium Risk 200… subscore 2, Low Risk 201… subscore 2, Low Risk 202… subscore 2, Medium Risk 203… subscore 2, Medium Risk 204… subscore 2, Medium Risk 300… subscore 3, Low Risk (total score less than 4) 301… subscore 3, Medium Risk 302… subscore 3, Medium Risk 303… subscore 3, Medium Risk 304… subscore 3, Medium Risk 400… subscore 4, High Risk 401… subscore 4, High Risk 402… subscore 4, High Risk 403… subscore 4, High Risk 404… subscore 4, High Risk 500… subscore 5, High Risk 501… subscore 5, High Risk 502… subscore 5, High Risk 503… subscore 5, High Risk 504… subscore 5, High Risk 504… subscore 5, High Risk
Mark Morgansays:
The following worked when I tried it out:
The Keele STarT Back Screening Tool.
[select name="Q1" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Q1. My back pain has spread down my leg(s) at some time in the last 2 weeks (over the last two weeks)? [select name="Q2" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Q2. I have had pain in the shoulder or neck at some time in the last 2 weeks (over the last two weeks)? [select name="Q3" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Q3. I have only walked short distances because of my back pain (over the last two weeks)? [select name="Q4" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Q4. In the last 2 weeks, I have dressed more slowly than usual because of back pain (over the last two weeks)? [select name="Q5" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Q5. It’s not really safe for a person with a condition like mine to be physically active (over the last two weeks)? [select name="Q6" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Q6. Worrying thoughts have been going through my mind a lot of the time (over the last two weeks)? [select name="Q7" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Q7. I feel that my back pain is terrible and it’s never going to get any better (over the last two weeks)? [select name="Q8" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Q8. In general I have not enjoyed all the things I used to enjoy (over the last two weeks)? [select name="Q9" value="Not at all (0 points)=0|Slightly (0 points)=0|Moderately (0 points)=0|Very much (1 points)=1|Extremely (1 points)=1"] <- Q9. Overall, how bothersome has your back pain been in the last 2 weeks?
Total -> [calc value="score=(Q1)+(Q2)+(Q3)+(Q4)+(Q5)+(Q6)+(Q7)+(Q8)+(Q9)" memo="calculation"] out of 9 points
Interpretation –> [calc value=”score=(Q1)+(Q2)+(Q3)+(Q4)+((Q5)*100)+((Q6)*100)+((Q7)*100)+((Q8)*100)+((Q9)*100);score>404?’subscore 5, High Risk’:score>304?’subscore 4, High Risk’:score>300?’subscore 3, Medium Risk’:score>204?’subscore 3, Low Risk (total score less than 4)’:score>201?’subscore 2, Medium Risk’:score>104?’subscore 2, Low Risk’:score>102?’subscore 1, Medium Risk’:score>4?’subscore 1, Low Risk’:score>3?’subscore 0, Medium Risk’:’subscore 0, Low Risk'” memo=”categorized by total points and subscore of questions 5 through 9″]
Bbroyles86says:
Awesome! Thanks. Maybe I just wasn’t waiting long enough. Any ideas on why so slow?
Mark Morgansays:
That part takes place on the user’s local computer and is basically the browser processing the page’s contents (there’s no signals going backing or forth over the internet to slow it down, it’s all happening on the user’s computer). It might be faster on different computers or browsers, but I’m not really sure.
Bbroyles86says:
Mark, Any luck looking into the character limit problem?
Mark Morgansays:
Hi, can you explain what you are seeing? I see there are some that begin with ‘lab report’. Was there one that had all of those ‘lab report’ notes together? That shouldn’t be too much. There isn’t a character limit that I’m aware of.
Bbroyles86says:
I can run any of the lab report chunks separately just fine. But if I place them together, it fails. A character limit is the only thing that made sense to me.
Mark Morgansays:
Hi – I put all of the ‘Lab report’ posts together as one post. It is at https://www.soapnote.org/general/lab-report-all/ It works on my computer, but it is definitely slow. I don’t think there’s a character limit, but it just takes a while to process all the code for something that is long. Does it work on your computer?
nephrostationsays:
Hi, I can not see my own soap notes in my account to edit.They appear in the general search but not in my list of soapnotes.
Mark Morgansays:
Hello – it should work now. Sorry for the delay.
jagdishrvsays:
Thanks Mark. SOAPnotes is a great tool. Since 2-3 days I am having the following error. When I Log in an click on My Account-> My Soap notes, the system takes me to the categories page instead of my soap notes.
Mark Morgansays:
Sorry – my fault – should be working now.
alphabioticsays:
Hi Mark, I’m having a problem with the “My SOAPnotes” menu, as it does not show my private soapnotes anymore, rather, it just shows a list of all the categories of SOAPnote. Can this be fixed? Kind regards
Mark Morgansays:
Sorry – thank you – my fault – it should be corrected now.
Bbroyles86says:
What programming language is this thing?
Mark Morgansays:
Hi – the form elements are made with pHp, javascript, and html in a WordPress site framework.
Bbroyles86says:
Awesome! Thanks! I am running into what appears to be a character limit. It is rather lengthy. I will post it in a few. It is “lab report”, under my name.
Bbroyles86says:
OK. I can’t save it all together. I had to chunk it into pieces. I am using an excel spreadsheet that generates all the texts for me, it’s pretty slick and helps prevent me from making errors. I have not added the caution notes yet for high values, but it will be super easy in the spreadsheet, then copy paste.
Bbroyles86says:
How do I keep the selections at the top from showing up in my result?
[comment memo="=========Sending============"] [select name="origin_facility_name" value="|Clinton Memorial Hospital (Wilmington)|Highland District Hospital (Hillsboro)|Adena Greenfield Medical Center (Greenfield)|Adena Regional Medical Center (Chillicothe)|Miami Valley Hospital (Dayton)|UC Hospital (Cincinnati)|Bethesda North (Cincinnati)|Other"] [select name="origin_facility_department" value="|Emergency Room|Telemetry Unit|Cardiac Unit|Other"]
[comment memo="=========Receiving============"] [select name="destination_facility_name" value="|Clinton Memorial Hospital (Wilmington)|Highland District Hospital (Hillsboro)|Adena Greenfield Medical Center (Greenfield)|Adena Regional Medical Center (Chillicothe)|Miami Valley Hospital (Dayton)|UC Hospital (Cincinnati)|Bethesda North (Cincinnati)|Shriners (Cincinnati)|OSU Wexner Medical Center (Columbus)|Hearth & Care Center (Greenfield)|Edgewood Manor (Greenfield)|Grant Medical Center (Columbus)|Riverside Methodist (Columbus)|Children’s Medical Center (Cincinnati)|Other"] [select name="destination_facility_dept" value="|Telemetry Unit|Cardiac Unit|Acute Care Burn Unit|Emergency department|Intensive Care Unit|Labor and Delivery|Other"]
[var name="dispatched_unit"] was dispatched to [var name="origin_facility_name"], [var name="origin_facility_department"]. For a [var name=" pre_scheduled "] [var name="var_001"] ALS inter facility transfer of a patient to [var name="destination_facility_name"], [var name="destination_facility_dept"].
Mark Morgansays:
I think what you’re looking for would be a ‘hidden’ parameter for the select boxes you’ve got. I don’t have that currently. I can look into it. The only way to make your example work would be to have the select boxes in the actual text instead of calling the variables and having the select boxes up top.
Bbroyles86says:
Next Question: I am trying to nest questions, which doesn’t seem possible. For Example: Does the patient have chest pain? y/n if no, skips all those questions. if yes: have they had it before? y/n If no, skip if yes: what happened?
I was going to nest conditionals, but that doesn’t work. Ideas?
Mark Morgansays:
The workaround for nested conditionals is joined conditions. There are a ton of joined conditions on this example: https://www.soapnote.org/kidney/ckd-tool/ You should be able to do what you need with joined conditions, but it can be a little tedious putting them together.
Can I turn the check box starter in to a yes/no select or radio button?
Mark Morgansays:
to change the check box starter into a yes/no select, it would be [select memo="Radiates" name="co_cp_rad" value="yes|no"] for the first part.
kinditionsays:
What is the difference between Registry and Scratchpad? When I first tried Registry, if my memory is correct, clicking the “registered” note link from the Registry page returned the specific SOAPnote pre-populated with the input/saved data. Currently it only returns the blank SOAPnote. Did something change, or is Registry just Scratchpad with a dated link to the original blank SOAPnote?
information on registry is here: https://www.soapnote.org/sample/registry/ basically registry has more structure, can hold more information, and can be saved as CSV.
information on submissions is here: https://www.soapnote.org/sample/submissions/ basically submissions have structure, allow others to send you their output, acts a lot like registry. the goal is to allow users some means of recalling their use of the site, but it’s very limited. there’s hasn’t been and isn’t currently a way to repopulate a SOAPnote from a past entry.
Bbroyles86says:
This is a great tool. The only problem I am having is that I am unable to figure out how to make my form generate the result. I have established my fields and data, but how do I add all the other text I want in the output with all the selections of the user?
Mark Morgansays:
Do you have an example of what you’re working on or what you’re trying to make? I can look at it and see if I can help.
Bbroyles86says:
I figured that one out. Thanks. I put spaces in the variable names, It didn’t like it. LOL: Next question: In the top of my sheet, I am gathering all the data, then in the bottom, I generate the info to be copied. Is there a way to mark the lines for info gathering so that they are not included in the result?
GRPALERMOsays:
My note is calculating any reason why?
Mark Morgansays:
Sorry for the delay – I need to check the comments more frequently.
I don’t have bullet proof way of proofreading these notes, but here is my approach:
I went through your note, piece by piece and found these parts had small problems:
Amnesia After S (Anterograde) Are there any events just AFTER the injury that you/ person has no memory of (even brief)?[checkbox name="variable_1|" value="Yes|No |Unsure|No Duration"] Loss of Consciousness: Did the athlete lose consciousness? [checkbox name="variable_1" value="Yes|No |Unsure |No Duration"]
In this section, there is a variable with the name “variable_1|”. The “|” caused the error there.
In this section, the first checkbox is missing the ‘value’ part before ‘|Appears dazed….’.
I changed those two parts and came up with: S: Date of injury/illness: [date name="variable_1" default="01/05/2019"] C/o [textarea name="variable_1" default="sample text"] HX of concussion:[checkbox name="variable_1" value="yes |no |unknown"] Headache History? [checkbox name="variable_1" value="yes |no |unknown"]
Developmental History [text name="variable_1" default="sample text"] Developmental History [text name="variable_1" default="sample text"] O: Is there evidence of a forcible blow to the head? [checkbox name="variable_1" value="direct |indirect|Unknown"]
Is there evidence of intracranial injury or skull fracture? [checkbox name="variable_1" value="Yes|No |Unsure"]
Location of Impact: [text name="variable_1" default="sample text"]
Amnesia Before (Retrograde) Are there any events just BEFORE the injury that you/ person has no memory of (even brief)? [checkbox name="variable_1" value="Yes|No |Unsure"]
Amnesia After S (Anterograde) Are there any events just AFTER the injury that you/ person has no memory of (even brief)?[checkbox name="variable_1" value="Yes|No |Unsure|No Duration"] Loss of Consciousness: Did the athlete lose consciousness? [checkbox name="variable_1" value="Yes|No |Unsure |No Duration"]
A: [checkbox name="variable_1" value="850.0 (Concussion, with no loss of consciousness) – Positive injury description with evidence of forcible direct/ indirect blow to the head (A1a); plus evidence of active symptoms (B) of any type and number related to the trauma (Total Symptom Score >0); no evidence of LOC (A5), skull fracture or intracranial injury (A1b).|850.1 (Concussion, with brief loss of consciousness < 1 hour) – Positive injury description with evidence of forcible direct/ indirect blow to the head
(A1a); plus evidence of active symptoms (B) of any type and number related to the trauma (Total Symptom Score >0); positive evidence of LOC (A5), skull fracture or intracranial injury (A1b|850.9 (Concussion, unspecified) – Positive injury description with evidence of forcible direct/ indirect blow to the head (A1a); plus evidence of active symptoms (B) of any type and number related to the trauma (Total Symptom Score >0); unclear/unknown injury details; unclear evidence of LOC (A5), no skull fracture or intracranial injury|Other Diagnoses – If the patient presents with a positive injury description and associated symptoms, but additional evidence of intracranial injury (A 1b) such as from neuroimaging, a moderate TBI and the diagnostic category of 854 (Intracranial injury) should be considered"]
It can be difficult with the long forms because a simple error near the top of the form can wreck the whole thing. But, that’s how I test them. I’d like to make a proofreader in the future – hopefully someday soon!
Mattsays:
I just found this website and find a great value in using this for generating very thorough EMS patient care report narratives, but was wondering if there is any way to taylor a note for the EMS community? The Acute Care SOAP V2 is the closest note I found yet it still either lacks or includes information that a paramedic may either include or not assess.
kachangmdsays:
what are clippings for?
Mark Morgansays:
The clippings are meant to be code snippets that you use frequently. You set them on your profile page – https://www.soapnote.org/my-profile/ and you use them on the ‘generator’ page – https://www.soapnote.org/generator/. There’s chunks of text I use commonly when making these, and it’s nice to have them handy on the ‘generator’ page.
Doc_Tsays:
I am able to export document in HTML to run external of site. The note itself will open and run though unable to print using the submit button. I am using Windows 10 OS. Any recommendations? Thank you, Jim
Mark Morgansays:
Sorry – I am working on this now. Not sure when it stopped working…
Mark Morgansays:
Hi – It should work now. I like that feature. I’m sorry it slipped past me.
Dariosays:
ive got saMe problem. submit button doesn’t do anything.
Mark Morgansays:
If you get a chance, can you let me know which page is not working?
Jasonsays:
Is it possible to input data then have the output be put into paragraph form to be used for an EHR assessment? For example, instead of this…
CURB-65/CRB-65 Score for PneumoniaClinical Features: absent <– Confusion greater 19 mg per dL (6.8 mmol per L) <– Blood Urea Nitrogen less than 30 breaths per minute <– Respiratory rate systolic greater than/equal to 90 and diastolic greater than 60 <– Blood pressure greater than/equal to 65 CURB-65 = 2: Short inpatient hospitalization or closely-supervised outpatient treatment
Have the output read… In this patient confusion is absent, Blood Urea Nitrogen is greater than 19 mg per dL, the Respiratory rate is less than 30 breaths per minute, the systolic blood pressure is greater than/equal to 90 and diastolic greater than 60, and age is greater than/equal to 65 giving a CURB-65 score of 2. The patient may require short inpatient hospitalization or closely-supervised outpatient treatment.
Mark Morgansays:
Hi – it wouldn’t be difficult to make a more plain language output generating version as you’ve suggested. I’ll try to work on that version.
Jasonsays:
This is a great idea and I look forward to using it more but it is difficult to use. It’s difficutlt to find templates that make sense. For example, this anemia evaluation. After selecting micro vs. macrocytosis and the other selections the calculated result should read as an assessment to be able to copy and paste in an EHR. I think this is the idea of the site. It should read as follows…based on selections above the calculated result.
ANEMIA OF CHRONIC DISEASE This patient likely has a *microcytic* anemia due to *low* ferritin ….etc etc. without the asterisk of course. Peripheral blood smear clues may include rouleaux formation, myelophthisis. CBC clues may include normal RDW. Usual causes of ANEMIA OF CHRONIC DISEASE may include Temporal arteritis, Rheumatoid arthritis, Chronic inflammation, or Chronic infection. Unusual causes of ANEMIA OF CHRONIC DISEASE may include Hodgkin lymphoma, Renal cell carcinoma, Castleman disease, or Myelofibrosis. *This differential is quite short actually*
Mark Morgansays:
Hi – the calculator was an approach to anemia that I thought was interesting. Definitely not the only way to do it. When I’m using these, I usually paste them into the assessment as a type of ‘medical decision making’ section. But I see your point and can try to make another version that addresses your suggestions.
Mark Morgansays:
new comments page, go ahead and ask away!
chrispetrosinosays:
Thank you, Dr. Morgan. Your site is very informative and helpful! Chris Petrosino, BSN, RN (FNP – May, 2019)
marnold2777says:
Thank you Dr. Morgan. This site is a gem I found through AAFP’s FMP Toolkit. I am using it to actively design a residency QI project aimed at standardized team documentation between nurse and provider and reducing EMR/Admin burden. I’ll keep you posted on my progress.
Mark Morgansays:
Thank you! Good luck and let me know if you run into any snags on the site!
Aaronsays:
This site is phenominal seriously, very helpful and will definitley use very often! Thank you again.
gwoodsays:
Thank you so much Dr Morgan. Your site is a marvel, easy to use, and helps to run different tools effectively skipping a cumbersome or impossible merging with EMRs and much more. Kind regards, George
Asays:
Quick question; What type of coding would you call what the generator produces? I have been encouraging my peers to use your website but haven’t found the words to describe what type of encoding is used.
Mark Morgansays:
Hi – I call it ‘markup’ but I think some people refer to them as ‘tags’.
vonbramble says:
I’m having difficulty saving as HTML or Text file. Both Chrome and Brave just go to https://www.soapnote.org/edit/?dl=html&fileName=funote or https://www.soapnote.org/edit/?dl=txt&fileName=funote
What am I doing wrong? I consulted the manual.
bontastic says:
Same here
SOAPnote says:
Hi – I’ve been looking into this, but I’ve not been able to determine the cause that the ‘Save as HTML file’ stopped working. It may be a security issue with the software framework. If you noticed when it stopped working, that would be helpful. I’ll post a reply if I can get it working again.
SOAPnote says:
Hi – I think it’s a web security issue with html files. I removed the feature. I’m really sorry for the inconvenience.
alphabiotic says:
Hi Mark,
Having lots of problems logging in with Internet Explorer. It often asks me to solve capture but there isn’t a capture to solve. Then after several attempts of repeating the login, it suddenly ‘decides’ to log me in. Also, when I tried setting up a second account, for a colleague where I work to use, we are stuck in a reset password loop where it reports the “the passwords don’t match” however there is only a single password field so we are not sure what it’s referring to — meaning what doesn’t it match to? It’s a new password so obviously won’t match anything. Can you please help with these. Kind regards.
SOAPnote says:
Hi,
It should be working now. Let me know if you’re still having problems.
Michelleb72 says:
I revised a Psych Inital assessment from another user, to include more detailed “Developmental History” information. However, now it won’t calculate the results. I have looked through it and thought I caught the mistakes, but I must be missing something. Help!
Mark Morgan says:
Hi – it looks like you might have got it working and it calculates results. Feel free to let me know if there are other concerns.
scoobie69d says:
so on my note entitled ‘work in process’ I’m having trouble getting it to process. I fill in a all the spots. run the report, but it does not run as entered. some spots don’t save the data entered. some spots just copy to another area in the report. some data entered just doesn’t carry over. any input?
keauna says:
i need help! my soap notes wont calculate results !
Mark Morgan says:
Which one are you talking about?
bcwelch says:
Thank you for this site…great tool!
Is there a way to assign a value within a condition statement? For example…
[conditional field="gender" condition="(gender).is('male')"]
—- ASSIGN VALUE ‘HE’ to Variable PRONOUN here —
[/conditional]
OR maybe…
[conditional field="gender" condition="(gender).is('male') ---- ASSIGN VALUE 'HE' to Variable PRONOUN here --- "]
[/conditional]
bcwelch says:
For anyone who’s interested (tho it’s a little ‘clunky’), I guess this would be one way to handle it:
GENDER [radio name="gender" value="male|female"]
[conditional field="gender" condition="(gender).is('male')"]
[text name="possessive" default="his" size="3"]
[text name="subjective" default="he" size="3"]
[text name="objective" default="him" size="3"]
[/conditional]
[conditional field="gender" condition="(gender).is('female')"]
[text name="possessive" default="her" size="3"]
[text name="subjective" default="she" size="3"]
[text name="objective" default="her" size="3"]
[/conditional]
[var name="subjective"] did a great job tying [var name="possessive"] shoes instead of having it done for [var name="objective"].
melimira91 says:
Hello! thank you SO much for this site!! I’m a student and its been super helpful for documenting my case logs for school. I ahve a question though, is there a way to have a checkbox/checklist pre-checked already? i.e. I want my checkboxes/checklists to automatically have “negative” as checked and then I change it as needed instead of having to check it myself every time. Is there a way to do that?
Mark Morgan says:
That’s a good idea. I can look into adding the feature.
jedijeff says:
ive having trouble to get my form to calculate results im sure its something i’ve done but can’t figure it out
jedijeff says:
never mind I figured it out just took some time to over it line by line.
Grea site
Ashley says:
How do I save a SOAP note that I like to “My SOAPnotes”?
Mark Morgan says:
I think what a lot of people do is the following:
1) Make sure you’re logged on and on the page that you want to save.
2) Click on ‘View’ on the upper right of the SOAP note.
3) Select ‘Edit Markup’
4) Click on ‘Duplicate’
5) Then you can save it to your account and rename it and change it as you’d like.
Binti Jones says:
Hi Mark, great site, I love it. Can you please help with my private templates? When I click to see “my soapnotes” I get an error 404.
Thanks!
Mark Morgan says:
I tried a few different ways and it seems to work when I test it. When you go to https://my.soapnote.org, it should redirect to https://www.soapnote.org/author/xxxxx (‘xxxxx’ is your user name). For me it goes to https://www.soapnote.org/author/mark.morgan/.
emergencymom says:
I am having difficulty getting it to calculate results – can you help?
emergencymom says:
Can anyone help?
Mark Morgan says:
What page are you having trouble with?
emergencymom says:
I created a H & P and I am trying to run it, inputting information and it does not calculate anything at the bottom when I ask it to calculate
Mark Morgan says:
Hi – if you add a comment on the page you need help with, I can look into it.
keauna says:
I am having the same issue, did you figure out why your note wouldn’t calculate?
kachangmd says:
Hi Mark, Is there a way we could get a ‘time’ timestamp similar to the ‘date’ timestamp. Useful when making entries into the ED course.
lsanchezg says:
tHANK YOU FOR THIS WONDERFUL SITE. CAN YOU TELL ME HOW TO LINK TOGETHER DIFFERENT PARTS – HISTORY, PHYSICAL, a/p, INTO ONE TEMPLATE?
marnold2777 says:
My perspective – It depends on how complicated your coding is (specifically conditional elements) and how much verbiage total. You can copy and paste many elements (history, physical, a/p) into one template and it will run. I’ve noticed the site reaches it’s limit and becomes very sluggish to run at around 750 elements (you can figure out how many elements your template has by running it in the ‘create/edit’ tool (it shows in a popup when you click ‘run’). If you find you have too much for one template, you can add links in your template that open other templates.
An example of putting all of it together in one is this template of mine:
https://www.soapnote.org/complete/inpatient-progress-note-ap/
An example of reaching that element limit, splitting up the templates, and linking to each of them:
https://www.soapnote.org/subjective/master-medic-assistant-history-note/
marnold2777 says:
Is there a way to create a date stamp that defaults to a future date (like a ‘today’ + # days function)? The purpose for me would be creating a better Depo-Provera note that auto-sets the next depo window range (11 and 15 weeks, which would be easy to convert to #days for a default stamp if available)
Mark Morgan says:
Hi – There’s a new method added to ‘calc’ which can add and subtract days. Example is at https://www.soapnote.org/sample/add-subtract-dates/
marnold2777 says:
Awesome! I’ve just implemented this and now have depo shot documentation that auto-calculates the window. Thanks!
marnold2777 says:
Help. I can’t get to my favorited templates or the ones I’ve created without manually searching for them. I precious could the hyperlink of the author’s name to view all their templates. It no longer works. It also doesn’t work when clicking ‘my soapnotes’
Mark Morgan says:
Hi,
I will work on this today (2/27/20). Everything should work except the ‘favorite’ feature. It was breaking another part of the site after an update. Sorry for the inconvenience, I tried to avoid taking it out.
Mark Morgan says:
it is working properly now – I am sorry about the ‘favorite’ feature being discontinued.
marnold2777 says:
Thanks.
marnold2777 says:
Can you fix the navigation issues with the site? – when I click on ‘my soapnotes’, I get a different screen than shows all users but does not show any of my templates. The same thing happens when clicking on an author’s name.
Mark Morgan says:
Hi – sorry – I’ll try to fix it today (2/27/20). I removed the ‘favorite’ feature because it was breaking the site with another update. A lot of moving parts. The page with the soapnote you’ve authored will be back up soon.
terib says:
I am having trouble when I ‘calculate result’. It is not working.
Mark Morgan says:
Hi – I think it’s that a variable name can’t have spaces or punctuation. Try changing the lines
— at the beginning
[checkbox name="Reviewed old records." value="Reviewed old records."] to [checkbox name="Reviewedoldrecords" value="Reviewed old records."]
and also — under ‘immunizations’
[checkbox name="Up to date" value="Up to Date."] to [checkbox name="Uptodate" value="Up to Date."]
Then I think it should work.
Dario says:
Can I fork this on github?
Mark Morgan says:
Thank you for the question. The site is open to anyone to use for free, and the code for the site is pretty low-tech. But it’s not open source.
kachangmd says:
Is there anyway to have a timestamp button much like the date button but instead would enter the time of the entry?
Mark Morgan says:
Hello,
We added the timestamp feature you suggested. An example is here: https://www.soapnote.org/sample/timestamp/
kachangmd says:
Amazing thank you!!
scoobie69d says:
is there away to edit EMS Narrative- FIRE/EMS notes to add or edit some of the fields
gwood says:
Forms do not calculate results. Could you please take a look at it
Mark Morgan says:
sorry – looking into it.
Mark Morgan says:
it’s working now. sorry about the delay.
kindition says:
thank you, great tool you are providing
gwood says:
Thank you so much. All works great!
kindition says:
All forms are broken, none produce output when Calculate Result clicked. Also, Twitter users cannot send messages to you unless you follow them first. You need to set it to Receive Messages from Anyone.
I’d provide examples, but frankly, I can’t find a single form that isn’t broken, so it’s all of them by extension.
Mark Morgan says:
sorry – looking into it.
Mark Morgan says:
it’s working now. sorry about the delay.
also – I changed my twitter settings as you described.
dmergupe says:
I love your site! But it stopped working the calculate result button does not generate anything. I have tried multiple different templates please help! Thank you!!
wtgatewooddo says:
I’m having some trouble with it calculating the results with ALL the forms. Nothing pops up at the bottom.
emergencymom says:
Did you get any clarity on what is happening. I am sure it is user error (mine) I just cant figure out what i am doing wrong
Mark Morgan says:
Hi – if there is a specific page that’s not working, let me know. I’ll take a look at it.
DrRoss says:
Love the site, writing progress notes for Dentistry is often overlooked and notes end up being very vague. I think documentation is so important, but writing a good note takes time. This speeds up that process, especially for normal patient encounters. Can we get a dental category added to the site? Hopefully more dental professionals will begin to use it.
Thanks,
Ross
Mark Morgan says:
Dental category added – sorry for the delay.
[email protected] says:
Hi all,
My note is in psychiatriy under SOAP note 3. When I fill in all fields and generate, it doesn’t yield what I’ve put in. Instead it says “getting better” in many of the fields. Does anyone know why? Here is the text I had filled out.
discussed”]; energy levels are [select name="variable_1" value="Good|Fair|Poor|Terrible|Not discussed"]; concentration is [select name="variable_1" value="Good|Fair|Poor|Terrible|Not discussed"].
[textarea name="variable_1" default="sample text"]
O:
MSE
Alert and Oriented: [select name="variable_1" value="x4|x3|x2|x1"]
Appearance: [select name="variable_1" value="Appropriately dressed/well groomed|disheveled|inappropriately dressed|neglected"].
Attitude toward the therapist: [select name="variable_1" value="cooperative|guarded|suspicious|paranoid|paranoid|warm"].
Eye contact: [select name="variable_1" value="Good|Fair|Poor|Fleeting|Avoidant"].
Psychomotor activity: [select name="variable_1" value="retardation|agitation|none"].
Speech: [select name="variable_1" value="normal rate/normal volume|spontaneous|impoverished|pressured|aphasic|emotional|monotonous"].
Thought process: [select name="variable_1" value="linear, goal-directed, coherent|disorganized|incoherent|flight of ideas|racing thoughts|loose associations|perseverative|tangential|spontaneous"].
Thought Content: [text name="variable_1" default="sample text"].
Mood: [text name="variable_1" default="sample text"].
Affect: [select name="variable_1" value="congruent with mood, stable|blunted|flat|incongruent with mood"].
Perception: [select name="variable_1" value="No Hallucinations|Audio Hallucinations|Visual Hallucinations|Tactile Hallucinations|Olfactory Hallucinations|preocuppied with delusions|preocuppied with thoughts"].
Suicidal Ideation: [select name="variable_1" value="none present|passive ideation, no plans or intent|activally suicidal"].
Homicidal Ideation:[select name="variable_1" value="no homicidal ideation|current homicidal ideation"]
Insight: [select name="variable_1" value="good|fair|poor"].
Judgement: [select name="variable_1" value="good|fair|poor"]
A:
[textarea name="variable_1" default="sample text"]
P:
Patient was scheduled for an appointment on [text name="variable_1" default="sample text"].
Prognosis: At the time of writing, patient’s prognosis is [select name="variable_1" value="good|fair|poor|uncertain"] and continued treatment is [select name="variable_1" value="recommended|not recommended|Cdsds"].
Mark Morgan says:
Hi – sorry for the delay in replying
It has to do with the ‘variable_1’ name for all the variables. If you change them, it works the way you want (I think):
S:
Patient reports things have been [select name="variable_1" value="getting better|getting worse|just about the same"] since the last visit.
Neurovegetative Symptoms:
sleep is [select name="variable_2" value="Good|Fair|Poor|Terrible|Not discussed"];
appetite is [select name="variable_3" value="Good|Fair|Poor|Terrible|Not discussed"];
energy levels are [select name="variable_4" value="Good|Fair|Poor|Terrible|Not discussed"];
concentration is [select name="variable_5" value="Good|Fair|Poor|Terrible|Not discussed"].
[textarea name="variable_6" default="sample text"]
O:
MSE
Alert and Oriented: [select name="variable_7" value="x4|x3|x2|x1"]
Appearance: [select name="variable_8" value="Appropriately dressed/well groomed|disheveled|inappropriately dressed|neglected"].
Attitude toward the therapist: [select name="variable_9" value="cooperative|guarded|suspicious|paranoid|paranoid|warm"].
Eye contact: [select name="variable_10" value="Good|Fair|Poor|Fleeting|Avoidant"].
Psychomotor activity: [select name="variable_11" value="retardation|agitation|none"].
Speech: [select name="variable_12" value="normal rate/normal volume|spontaneous|impoverished|pressured|aphasic|emotional|monotonous"].
Thought process: [select name="variable_13" value="linear, goal-directed, coherent|disorganized|incoherent|flight of ideas|racing thoughts|loose associations|perseverative|tangential|spontaneous"].
Thought Content: [text name="variable_14" default="sample text"].
Mood: [text name="variable_15" default="sample text"].
Affect: [select name="variable_16" value="congruent with mood, stable|blunted|flat|incongruent with mood"].
Perception: [select name="variable_17" value="No Hallucinations|Audio Hallucinations|Visual Hallucinations|Tactile Hallucinations|Olfactory Hallucinations|preocuppied with delusions|preocuppied with thoughts"].
Suicidal Ideation: [select name="variable_18" value="none present|passive ideation, no plans or intent|activally suicidal"].
Homicidal Ideation:[select name="variable_19" value="no homicidal ideation|current homicidal ideation"]
Insight: [select name="variable_20" value="good|fair|poor"].
Judgement: [select name="variable_21" value="good|fair|poor"]
A:
[textarea name="variable_22" default="sample text"]
P:
Patient was scheduled for an appointment on [text name="variable_23" default="sample text"].
Prognosis: At the time of writing, patient’s prognosis is [select name="variable_24" value="good|fair|poor|uncertain"] and continued treatment is [select name="variable_25" value="recommended|not recommended|Cdsds"].
[textarea name="variable_26" default="sample text"]
kachangmd says:
Dear Dr. Morgan,
Can we get a ‘timestamp’ function similar to the ‘date’ function?
Mark Morgan says:
Hi –
That’s a good idea. I will look into it.
Sincerely,
Mark Morgan
Mark Morgan says:
Timestamp function added. It puts in current date and time into the field. It’s about time!
gwood says:
Dear Dr Morgan,
Thank you kindly for your help! Great teaching template material too!
Best regards,
George
gwood says:
Anyone can help Keele STarT Back Screening Tool interpretations. If someone can help. How to make it work? https://www.physio-pedia.com/STarT_Back_Screening_Tool
Total Score –> [calc value="score=(Q1)+(Q2)+(Q3)+(Q4)+(Q5)+(Q6)+(Q7)+(Q8)+(Q9)" memo="score"] out of 9 points
Interpretation –> [calc value="score=(Q1)+(Q2)+(Q3)+(Q4)+(Q5)+(Q6)+(Q7)+(Q8)+(Q9);score>3?'Medium to High risk':score>0?'Low risk'" memo="interpretation"]
Sub Score –> [calc value="score1=(Q5)+(Q6)+(Q7)+(Q8)+(Q9)" memo="score1"] out of 5 points
Interpretation –> [calc value="score1=(Q5)+(Q6)+(Q7)+(Q8)+(Q9);score1>3?'High risk':score1>0?'Medium risk'" memo="interpretation"]
The Keele STarT Back Screening Tool.
[select name="Q1" value="Disagree (0 points)=0|Agree (1 points)=1"] <– My back pain has spread down my leg(s) at some time in the last 2 weeks (over the last two weeks)?
[select name="Q2" value="Disagree (0 points)=0|Agree (1 points)=1"] <– I have had pain in the shoulder or neck at some time in the last 2 weeks (over the last two weeks)?
[select name="Q3" value="Disagree (0 points)=0|Agree (1 points)=1"] <– I have only walked short distances because of my back pain (over the last two weeks)?
[select name="Q4" value="Disagree (0 points)=0|Agree (1 points)=1"] <– In the last 2 weeks, I have dressed more slowly than usual because of back pain (over the last two weeks)?
[select name="Q5" value="Disagree (0 points)=0|Agree (1 points)=1"] <– It’s not really safe for a person with a condition like mine to be physically active (over the last two weeks)?
[select name="Q6" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Worrying thoughts have been going through my mind a lot of the time (over the last two weeks)?
[select name="Q7" value="Disagree (0 points)=0|Agree (1 points)=1"] <– I feel that my back pain is terrible and it’s never going to get any better (over the last two weeks)?
[select name="Q8" value="Disagree (0 points)=0|Agree (1 points)=1"] <– In general I have not enjoyed all the things I used to enjoy (over the last two weeks)?
[select name="Q9" value="Not at all (0 points)=0|Slightly (0 points)=0|Moderately (0 points)=0|Very much (1 points)=1|Extremely (1 points)=1"] [calc value="score=(Q1)+(Q2)+(Q3)+(Q4)+(Q5)+(Q6)+(Q7)+(Q8)+(Q9)" memo="score"] out of 9 points
Interpretation –> [calc value="score=(Q1)+(Q2)+(Q3)+(Q4)+(Q5)+(Q6)+(Q7)+(Q8)+(Q9);score>3?'Medium to High risk':score>0?'Low risk'" memo="interpretation"]
Sub Score –> [calc value="score1=(Q5)+(Q6)+(Q7)+(Q8)+(Q9)" memo="score1"] out of 5 points
Interpretation –> [calc value="score1=(Q5)+(Q6)+(Q7)+(Q8)+(Q9);score1>3?'High risk':score1>0?'Medium risk'" memo="interpretation"]
Mark Morgan says:
First – I set a value for the two different question types and then mapped out the values:
Questions 1-4 at 1 point each
Questions 5-9 at 100 points each (I chose 100 points arbitrarily, anything over 10 would probably work)
Possible combinations and risk values mapped out:
0… subscore 0, Low Risk
1… subscore 0, Low Risk
2… subscore 0, Low Risk
3… subscore 0, Low Risk
4… subscore 0, Medium Risk
100… subscore 1, Low Risk
101… subscore 1, Low Risk
102… subscore 1, Low Risk
103… subscore 1, Medium Risk
104… subscore 1, Medium Risk
200… subscore 2, Low Risk
201… subscore 2, Low Risk
202… subscore 2, Medium Risk
203… subscore 2, Medium Risk
204… subscore 2, Medium Risk
300… subscore 3, Low Risk (total score less than 4)
301… subscore 3, Medium Risk
302… subscore 3, Medium Risk
303… subscore 3, Medium Risk
304… subscore 3, Medium Risk
400… subscore 4, High Risk
401… subscore 4, High Risk
402… subscore 4, High Risk
403… subscore 4, High Risk
404… subscore 4, High Risk
500… subscore 5, High Risk
501… subscore 5, High Risk
502… subscore 5, High Risk
503… subscore 5, High Risk
504… subscore 5, High Risk
504… subscore 5, High Risk
Mark Morgan says:
The following worked when I tried it out:
The Keele STarT Back Screening Tool.
[select name="Q1" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Q1. My back pain has spread down my leg(s) at some time in the last 2 weeks (over the last two weeks)?
[select name="Q2" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Q2. I have had pain in the shoulder or neck at some time in the last 2 weeks (over the last two weeks)?
[select name="Q3" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Q3. I have only walked short distances because of my back pain (over the last two weeks)?
[select name="Q4" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Q4. In the last 2 weeks, I have dressed more slowly than usual because of back pain (over the last two weeks)?
[select name="Q5" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Q5. It’s not really safe for a person with a condition like mine to be physically active (over the last two weeks)?
[select name="Q6" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Q6. Worrying thoughts have been going through my mind a lot of the time (over the last two weeks)?
[select name="Q7" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Q7. I feel that my back pain is terrible and it’s never going to get any better (over the last two weeks)?
[select name="Q8" value="Disagree (0 points)=0|Agree (1 points)=1"] <– Q8. In general I have not enjoyed all the things I used to enjoy (over the last two weeks)?
[select name="Q9" value="Not at all (0 points)=0|Slightly (0 points)=0|Moderately (0 points)=0|Very much (1 points)=1|Extremely (1 points)=1"] <- Q9. Overall, how bothersome has your back pain been in the last 2 weeks?
Total -> [calc value="score=(Q1)+(Q2)+(Q3)+(Q4)+(Q5)+(Q6)+(Q7)+(Q8)+(Q9)" memo="calculation"] out of 9 points
Interpretation –> [calc value=”score=(Q1)+(Q2)+(Q3)+(Q4)+((Q5)*100)+((Q6)*100)+((Q7)*100)+((Q8)*100)+((Q9)*100);score>404?’subscore 5, High Risk’:score>304?’subscore 4, High Risk’:score>300?’subscore 3, Medium Risk’:score>204?’subscore 3, Low Risk (total score less than 4)’:score>201?’subscore 2, Medium Risk’:score>104?’subscore 2, Low Risk’:score>102?’subscore 1, Medium Risk’:score>4?’subscore 1, Low Risk’:score>3?’subscore 0, Medium Risk’:’subscore 0, Low Risk'” memo=”categorized by total points and subscore of questions 5 through 9″]
Bbroyles86 says:
Awesome! Thanks. Maybe I just wasn’t waiting long enough. Any ideas on why so slow?
Mark Morgan says:
That part takes place on the user’s local computer and is basically the browser processing the page’s contents (there’s no signals going backing or forth over the internet to slow it down, it’s all happening on the user’s computer). It might be faster on different computers or browsers, but I’m not really sure.
Bbroyles86 says:
Mark,
Any luck looking into the character limit problem?
Mark Morgan says:
Hi, can you explain what you are seeing? I see there are some that begin with ‘lab report’. Was there one that had all of those ‘lab report’ notes together? That shouldn’t be too much. There isn’t a character limit that I’m aware of.
Bbroyles86 says:
I can run any of the lab report chunks separately just fine. But if I place them together, it fails. A character limit is the only thing that made sense to me.
Mark Morgan says:
Hi – I put all of the ‘Lab report’ posts together as one post. It is at https://www.soapnote.org/general/lab-report-all/ It works on my computer, but it is definitely slow. I don’t think there’s a character limit, but it just takes a while to process all the code for something that is long. Does it work on your computer?
nephrostation says:
Hi, I can not see my own soap notes in my account to edit.They appear in the general search but not in my list of soapnotes.
Mark Morgan says:
Hello – it should work now. Sorry for the delay.
jagdishrv says:
Thanks Mark. SOAPnotes is a great tool. Since 2-3 days I am having the following error. When I Log in an click on My Account-> My Soap notes, the system takes me to the categories page instead of my soap notes.
Mark Morgan says:
Sorry – my fault – should be working now.
alphabiotic says:
Hi Mark, I’m having a problem with the “My SOAPnotes” menu, as it does not show my private soapnotes anymore, rather, it just shows a list of all the categories of SOAPnote. Can this be fixed? Kind regards
Mark Morgan says:
Sorry – thank you – my fault – it should be corrected now.
Bbroyles86 says:
What programming language is this thing?
Mark Morgan says:
Hi – the form elements are made with pHp, javascript, and html in a WordPress site framework.
Bbroyles86 says:
Awesome! Thanks!
I am running into what appears to be a character limit. It is rather lengthy. I will post it in a few. It is “lab report”, under my name.
Bbroyles86 says:
OK. I can’t save it all together. I had to chunk it into pieces. I am using an excel spreadsheet that generates all the texts for me, it’s pretty slick and helps prevent me from making errors. I have not added the caution notes yet for high values, but it will be super easy in the spreadsheet, then copy paste.
Bbroyles86 says:
How do I keep the selections at the top from showing up in my result?
[comment memo="--------------DISPATCH INFO----------------"]
[select name="dispatched_unit" value="|Unit 21-01|Unit 22-01|Unit 23-01"]
[comment memo="=========Sending============"]
[select name="origin_facility_name" value="|Clinton Memorial Hospital (Wilmington)|Highland District Hospital (Hillsboro)|Adena Greenfield Medical Center (Greenfield)|Adena Regional Medical Center (Chillicothe)|Miami Valley Hospital (Dayton)|UC Hospital (Cincinnati)|Bethesda North (Cincinnati)|Other"] [select name="origin_facility_department" value="|Emergency Room|Telemetry Unit|Cardiac Unit|Other"]
[select name="pre_scheduled" value="|Pre-Scheduled|Non-Scheduled"] [select name="var_001" value="|Non-Emergent|Emergent"]
[comment memo="=========Receiving============"]
[select name="destination_facility_name" value="|Clinton Memorial Hospital (Wilmington)|Highland District Hospital (Hillsboro)|Adena Greenfield Medical Center (Greenfield)|Adena Regional Medical Center (Chillicothe)|Miami Valley Hospital (Dayton)|UC Hospital (Cincinnati)|Bethesda North (Cincinnati)|Shriners (Cincinnati)|OSU Wexner Medical Center (Columbus)|Hearth & Care Center (Greenfield)|Edgewood Manor (Greenfield)|Grant Medical Center (Columbus)|Riverside Methodist (Columbus)|Children’s Medical Center (Cincinnati)|Other"] [select name="destination_facility_dept" value="|Telemetry Unit|Cardiac Unit|Acute Care Burn Unit|Emergency department|Intensive Care Unit|Labor and Delivery|Other"]
[var name="dispatched_unit"] was dispatched to [var name="origin_facility_name"], [var name="origin_facility_department"]. For a [var name=" pre_scheduled "] [var name="var_001"] ALS inter facility transfer of a patient to [var name="destination_facility_name"], [var name="destination_facility_dept"].
Mark Morgan says:
I think what you’re looking for would be a ‘hidden’ parameter for the select boxes you’ve got. I don’t have that currently. I can look into it. The only way to make your example work would be to have the select boxes in the actual text instead of calling the variables and having the select boxes up top.
Bbroyles86 says:
Next Question:
I am trying to nest questions, which doesn’t seem possible. For Example:
Does the patient have chest pain? y/n
if no, skips all those questions.
if yes: have they had it before? y/n
If no, skip
if yes: what happened?
I was going to nest conditionals, but that doesn’t work. Ideas?
Mark Morgan says:
The workaround for nested conditionals is joined conditions. There are a ton of joined conditions on this example: https://www.soapnote.org/kidney/ckd-tool/ You should be able to do what you need with joined conditions, but it can be a little tedious putting them together.
Bbroyles86 says:
[checkbox memo="Radiates" name="co_cp_rad" value=""][conditional field="co_cp_rad" condition="(co_cp_rad).is('')"]
[checkbox name="co_cp_rads" value="Med Chest|Right Lateral Chest|Left Lateral Chest|Sub-Sternum area|Right shoulder|Left chest|Back - Upper|Back - Lower|Abdomen|Right Arm|Left Arm"]
[/conditional]
Can I turn the check box starter in to a yes/no select or radio button?
Mark Morgan says:
to change the check box starter into a yes/no select, it would be [select memo="Radiates" name="co_cp_rad" value="yes|no"] for the first part.
kindition says:
What is the difference between Registry and Scratchpad? When I first tried Registry, if my memory is correct, clicking the “registered” note link from the Registry page returned the specific SOAPnote pre-populated with the input/saved data. Currently it only returns the blank SOAPnote. Did something change, or is Registry just Scratchpad with a dated link to the original blank SOAPnote?
Great idea and implementation overall, thank you!
Mark Morgan says:
information on scratchpad is here: https://www.soapnote.org/sample/scratchpad/
basically scratchpad is limited and unstructured output.
information on registry is here: https://www.soapnote.org/sample/registry/
basically registry has more structure, can hold more information, and can be saved as CSV.
information on submissions is here: https://www.soapnote.org/sample/submissions/
basically submissions have structure, allow others to send you their output, acts a lot like registry.
the goal is to allow users some means of recalling their use of the site, but it’s very limited. there’s hasn’t been and isn’t currently a way to repopulate a SOAPnote from a past entry.
Bbroyles86 says:
This is a great tool. The only problem I am having is that I am unable to figure out how to make my form generate the result. I have established my fields and data, but how do I add all the other text I want in the output with all the selections of the user?
Mark Morgan says:
Do you have an example of what you’re working on or what you’re trying to make? I can look at it and see if I can help.
Bbroyles86 says:
I figured that one out. Thanks. I put spaces in the variable names, It didn’t like it. LOL:
Next question: In the top of my sheet, I am gathering all the data, then in the bottom, I generate the info to be copied. Is there a way to mark the lines for info gathering so that they are not included in the result?
GRPALERMO says:
My note is calculating any reason why?
Mark Morgan says:
Sorry for the delay – I need to check the comments more frequently.
I don’t have bullet proof way of proofreading these notes, but here is my approach:
If there’s a problem, I take the notes in small chunks and test it at this page: https://www.soapnote.org/generator/
I went through your note, piece by piece and found these parts had small problems:
Amnesia After S (Anterograde) Are there any events just AFTER the injury that you/ person has no memory of (even brief)?[checkbox name="variable_1|" value="Yes|No |Unsure|No Duration"]
Loss of Consciousness: Did the athlete lose consciousness? [checkbox name="variable_1" value="Yes|No |Unsure |No Duration"]
In this section, there is a variable with the name “variable_1|”. The “|” caused the error there.
EARLY SIGNS: [checkbox name="variable_1" |Appears dazed or stunned |Is confused about events |Answers questions slowly | Repeats Questions |Forgetful|Value="dizziness|LOC|Balance problems"][checkbox name="Conussion" value="Slow reaction time|amnesia|sleep disturbance"][checkbox name="field_name" value="headaches|irritability|nausea"][checkbox name="field_name" value="vomiting|light sensativity|balance problems"]
In this section, the first checkbox is missing the ‘value’ part before ‘|Appears dazed….’.
I changed those two parts and came up with:
S:
Date of injury/illness: [date name="variable_1" default="01/05/2019"]
C/o [textarea name="variable_1" default="sample text"]
HX of concussion:[checkbox name="variable_1" value="yes |no |unknown"]
Headache History? [checkbox name="variable_1" value="yes |no |unknown"]
Developmental History [text name="variable_1" default="sample text"]
Developmental History [text name="variable_1" default="sample text"]
O:
Is there evidence of a forcible blow to the head? [checkbox name="variable_1" value="direct |indirect|Unknown"]
Is there evidence of intracranial injury or skull fracture? [checkbox name="variable_1" value="Yes|No |Unsure"]
Location of Impact: [text name="variable_1" default="sample text"]
Cause: [radio name="variable_1" value=" MVC|Athletics|Assault| Fall"]
Amnesia Before (Retrograde) Are there any events just BEFORE the injury that you/ person has no memory of (even brief)? [checkbox name="variable_1" value="Yes|No |Unsure"]
Amnesia After S (Anterograde) Are there any events just AFTER the injury that you/ person has no memory of (even brief)?[checkbox name="variable_1" value="Yes|No |Unsure|No Duration"]
Loss of Consciousness: Did the athlete lose consciousness? [checkbox name="variable_1" value="Yes|No |Unsure |No Duration"]
EARLY SIGNS: [checkbox name="variable_1" value="Appears dazed or stunned |Is confused about events |Answers questions slowly | Repeats Questions |Forgetful|dizziness|LOC|Balance problems"][checkbox name="Conussion" value="Slow reaction time|amnesia|sleep disturbance"][checkbox name="field_name" value="headaches|irritability|nausea"][checkbox name="field_name" value="vomiting|light sensativity|balance problems"]
Seizures: Were seizures observed? [checkbox name="variable_1" value="yes |no |unknown"] Detail [textarea name="variable_1" default="sample text"]
A:
[checkbox name="variable_1" value="850.0 (Concussion, with no loss of consciousness) – Positive injury description with evidence of forcible direct/ indirect blow to the head (A1a); plus
evidence of active symptoms (B) of any type and number related to the trauma (Total Symptom Score >0); no evidence of LOC (A5), skull fracture or
intracranial injury (A1b).|850.1 (Concussion, with brief loss of consciousness < 1 hour) – Positive injury description with evidence of forcible direct/ indirect blow to the head (A1a); plus evidence of active symptoms (B) of any type and number related to the trauma (Total Symptom Score >0); positive evidence of LOC (A5),
skull fracture or intracranial injury (A1b|850.9 (Concussion, unspecified) – Positive injury description with evidence of forcible direct/ indirect blow to the head (A1a); plus evidence of active
symptoms (B) of any type and number related to the trauma (Total Symptom Score >0); unclear/unknown injury details; unclear evidence of LOC (A5), no
skull fracture or intracranial injury|Other Diagnoses – If the patient presents with a positive injury description and associated symptoms, but additional evidence of intracranial injury (A 1b)
such as from neuroimaging, a moderate TBI and the diagnostic category of 854 (Intracranial injury) should be considered"]
p:[textarea name="variable_1" default="sample text"]
It can be difficult with the long forms because a simple error near the top of the form can wreck the whole thing. But, that’s how I test them. I’d like to make a proofreader in the future – hopefully someday soon!
Matt says:
I just found this website and find a great value in using this for generating very thorough EMS patient care report narratives, but was wondering if there is any way to taylor a note for the EMS community? The Acute Care SOAP V2 is the closest note I found yet it still either lacks or includes information that a paramedic may either include or not assess.
kachangmd says:
what are clippings for?
Mark Morgan says:
The clippings are meant to be code snippets that you use frequently. You set them on your profile page – https://www.soapnote.org/my-profile/ and you use them on the ‘generator’ page – https://www.soapnote.org/generator/. There’s chunks of text I use commonly when making these, and it’s nice to have them handy on the ‘generator’ page.
Doc_T says:
I am able to export document in HTML to run external of site. The note itself will open and run though unable to print using the submit button. I am using Windows 10 OS. Any recommendations? Thank you, Jim
Mark Morgan says:
Sorry – I am working on this now. Not sure when it stopped working…
Mark Morgan says:
Hi – It should work now. I like that feature. I’m sorry it slipped past me.
Dario says:
ive got saMe problem. submit button doesn’t do anything.
Mark Morgan says:
If you get a chance, can you let me know which page is not working?
Jason says:
Is it possible to input data then have the output be put into paragraph form to be used for an EHR assessment? For example, instead of this…
CURB-65/CRB-65 Score for PneumoniaClinical Features:
absent <– Confusion
greater 19 mg per dL (6.8 mmol per L) <– Blood Urea Nitrogen
less than 30 breaths per minute <– Respiratory rate
systolic greater than/equal to 90 and diastolic greater than 60 <– Blood pressure
greater than/equal to 65 CURB-65 = 2: Short inpatient hospitalization or closely-supervised outpatient treatment
Have the output read…
In this patient confusion is absent, Blood Urea Nitrogen is greater than 19 mg per dL, the Respiratory rate is less than 30 breaths per minute, the systolic blood pressure is greater than/equal to 90 and diastolic greater than 60, and age is greater than/equal to 65 giving a CURB-65 score of 2. The patient may require short inpatient hospitalization or closely-supervised outpatient treatment.
Mark Morgan says:
Hi – it wouldn’t be difficult to make a more plain language output generating version as you’ve suggested. I’ll try to work on that version.
Jason says:
This is a great idea and I look forward to using it more but it is difficult to use. It’s difficutlt to find templates that make sense. For example, this anemia evaluation. After selecting micro vs. macrocytosis and the other selections the calculated result should read as an assessment to be able to copy and paste in an EHR. I think this is the idea of the site.
It should read as follows…based on selections above the calculated result.
ANEMIA OF CHRONIC DISEASE
This patient likely has a *microcytic* anemia due to *low* ferritin ….etc etc. without the asterisk of course.
Peripheral blood smear clues may include rouleaux formation, myelophthisis. CBC clues may include normal RDW.
Usual causes of ANEMIA OF CHRONIC DISEASE may include Temporal arteritis, Rheumatoid arthritis, Chronic inflammation, or Chronic infection. Unusual causes of ANEMIA OF CHRONIC DISEASE may include Hodgkin lymphoma, Renal cell carcinoma, Castleman disease, or Myelofibrosis.
*This differential is quite short actually*
Mark Morgan says:
Hi – the calculator was an approach to anemia that I thought was interesting. Definitely not the only way to do it. When I’m using these, I usually paste them into the assessment as a type of ‘medical decision making’ section. But I see your point and can try to make another version that addresses your suggestions.
Mark Morgan says:
new comments page, go ahead and ask away!
chrispetrosino says:
Thank you, Dr. Morgan. Your site is very informative and helpful! Chris Petrosino, BSN, RN (FNP – May, 2019)
marnold2777 says:
Thank you Dr. Morgan. This site is a gem I found through AAFP’s FMP Toolkit. I am using it to actively design a residency QI project aimed at standardized team documentation between nurse and provider and reducing EMR/Admin burden. I’ll keep you posted on my progress.
Mark Morgan says:
Thank you! Good luck and let me know if you run into any snags on the site!
Aaron says:
This site is phenominal seriously, very helpful and will definitley use very often! Thank you again.
gwood says:
Thank you so much Dr Morgan.
Your site is a marvel, easy to use, and helps to run different tools effectively skipping a cumbersome or impossible merging with EMRs and much more.
Kind regards,
George
A says:
Quick question; What type of coding would you call what the generator produces? I have been encouraging my peers to use your website but haven’t found the words to describe what type of encoding is used.
Mark Morgan says:
Hi – I call it ‘markup’ but I think some people refer to them as ‘tags’.