Topic · AI GIRP note generator
AI GIRP note generator that runs on your Mac — Goal / Intervention / Response / Plan drafted locally, every session tied back to your treatment plan
GIRP is the documentation format used in programs where every session must explicitly demonstrate work toward a written treatment plan — Medicaid waiver, federally qualified health centers, assertive community treatment, intensive outpatient, residential, school-based behavioral health, and ABA-adjacent practices that document by goal. The format's job is straightforward: replace BIRP's Behavior paragraph with a Goal paragraph that names, by number and short description, the treatment-plan goal this session targeted, then carry through with Intervention, Response, and Plan in the same shape as BIRP. A GIRP generator built for the format respects that opening anchor — Goal is a focused statement, not a narrative, and it does the audit-readability work of telling a reviewer in two sentences which plan this session worked on. TherapyDraft is the GIRP generator built around that opening — and it does the work on your Mac, with no network socket open for the audio, the transcript, the draft, or the treatment plan you pasted in.
TL;DR
TherapyDraft is an AI GIRP note generator for US mental-health clinicians working in treatment-plan-driven programs that runs entirely on the clinician's M-series Mac. Paste the client's active treatment-plan goals once, record a session, click "Draft GIRP," and in two to four minutes you have a Goal / Intervention / Response / Plan draft sized for the median treatment-plan-anchored progress note. The Goal paragraph names the targeted goal verbatim by its plan-number and short description; Intervention, Response, and Plan share the BIRP-style structure. The audio file, the transcript, the draft, and the pasted treatment plan never open a network socket because the macOS network-sandbox entitlement on those code paths is set to deny by design. Output pastes cleanly into SimplePractice, TherapyNotes, TheraNest, Valant, Credible, and any other EHR with a structured progress-note form. There is a 10-session free trial; paid is $39 per month or $349 per year, with $29 per seat per month for groups of 3+.
Why GIRP, and why a generator built specifically for GIRP
GIRP — Goal, Intervention, Response, Plan — is the dominant format in programs where the documentation standard requires every session to demonstrate explicit work toward a written treatment plan. That includes Medicaid waiver programs (HCBS waivers, 1915(c) waivers, 1115 demonstrations), federally qualified health centers, assertive community treatment teams, intensive outpatient programs, partial hospitalization programs, residential treatment, school-based behavioral health, and ABA-adjacent practices that document progress by goal rather than by session. The structural reason GIRP exists is straightforward: in these contexts, a reviewer reading a chart needs to confirm in seconds that this session was working on something written into the client's plan, not freelancing toward whatever the session content happened to surface. BIRP opens with Behavior — observable presentation at session start. GIRP opens with Goal — the numbered treatment-plan goal this session targets. That is the format's whole job, and it does it well.
That structural emphasis matters for AI-assisted drafting in a way it doesn't for DAP, SOAP, or even BIRP. The recurring failure mode of cloud GIRP scribes is the easiest one to fall into: the model drafts a generic Goal paragraph that paraphrases what happened in the session ("Client worked on managing anxiety in the workplace"), without naming the actual numbered treatment-plan goal verbatim and without tying the session content to that specific written goal. An auditor reading "Client worked on managing anxiety" cannot confirm the session was on-plan because the plan isn't named. The chart fails the format's whole purpose. A generator tuned for GIRP has to be tuned to do the opposite — to name the goal exactly as written, by number and short description, and to ground the rest of the note in that named goal.
TherapyDraft's prompt scaffolding for GIRP is calibrated against roughly seventy anonymized real GIRP notes contributed by beta clinicians during the supervised testing phase, with deliberate weighting toward Medicaid-waiver, IOP, and FQHC contexts where GIRP is the house format. The scaffolding requires the Goal paragraph to cite the exact numbered goal from the pasted treatment plan, then name how this session's content maps to that goal — without paraphrasing the goal text and without inventing a goal that isn't in the plan. Intervention is then written in BIRP-style detail, but the segments are organized to show how each segment served the named goal. Response tracks change-markers relative to the goal, not relative to a session-level baseline. Plan closes with next-step items that move the goal forward. The output reflects that — Goal anchors everything, Intervention does the work, Response demonstrates the work landing against the plan, Plan moves the plan along.
The GIRP-drafting workflow on a Mac
- Paste the treatment plan once per client. The first time you draft a GIRP for a given client, paste the client's active treatment-plan goals into TherapyDraft's per-client treatment-plan field. The plan stays in the local encrypted database alongside that client's session history. Subsequent GIRP drafts read from that field automatically; you only re-paste when the plan is updated, and the update history is timestamped locally for your own audit trail.
- Record or import the audio. Use TherapyDraft's built-in recorder, your Mac's microphone, a USB lavalier, or an exported audio file from any session-recording setup. Telehealth recordings work; in-person recordings work; phone-call exports work. The file is stored in TherapyDraft's local Application Support directory and stays there until you delete it.
- Pick GIRP and pick the voice preset. The format dropdown has SOAP, DAP, BIRP, GIRP, and a Custom mode. Choose GIRP. The voice preset toggles whether Goal cites only the primary goal or names secondary goals when the session genuinely worked on more than one, whether Intervention is segmented by goal or by modality, whether Response is structured by domain or written as a single paragraph, and whether Plan numbers its items or bullets them. Defaults are calibrated to the Medicaid-waiver-and-IOP standard; first-time customization is one click per toggle, and the preset is persistent per client.
- Draft locally. whisper.cpp transcribes the audio on your Mac (real-time factor under 1.0× on M2 and faster), then Qwen 2.5 14B-Instruct (4-bit MLX) runs the GIRP-shaped prompt against the transcript and the pasted treatment plan. End-to-end on a 50-minute session: 90–150 seconds on M2, 60–100 seconds on M3 or M4. The macOS network-sandbox entitlement on the recording, transcription, and inference paths is set to deny by design; there is no socket through which audio, text, or treatment-plan content can leave.
- Review and paste. Read the draft in TherapyDraft's editor, fix anything the model got wrong (especially in the Goal paragraph — verify the plan-number citation is correct), then click the EHR-paste preset for your chart-of-record. Output is plain-text labeled paragraphs that drop cleanly into the Goal, Intervention, Response, and Plan fields of any standard GIRP form. Custom forms with extra fields (Modality, CPT, Time-in-session, Risk Statement, Plan-number-and-objective) work too — the Custom-form-aware preset reads your field labels and emits paragraphs to match.
- Sign in your EHR. The note is yours; the AI authored a draft, you authored the note. The audit trail in your EHR shows you as the author of every field because every field was edited by you while logged in. That is the correct legal posture for any audit context and matches the way every cloud GIRP scribe quietly handles authorship in practice.
End-to-end time on a 50-minute session: roughly two to four minutes of local drafting plus one to three minutes of clinical review and editing in your EHR. Net displacement of typing burden: about 15–25 minutes per session, which is the same range cloud GIRP scribes report — without the audio leaving your machine, without the treatment plan leaving your machine, and without the documentation sitting in any vendor's tenant where an audit-letter reach could find it through somebody else's discovery process.
A sample GIRP output from the same anonymized fake transcript used on the DAP, SOAP, and BIRP pages
Below is a draft TherapyDraft produced from the same anonymized fake 50-minute transcript that drove the samples on the DAP-generator page, the SOAP-private-practice page, and the BIRP-generator page, with the format set to GIRP and a fictional treatment-plan excerpt pasted in. The "client" is composite; nothing in this transcript corresponds to a real session or a real person. Names, demographics, and clinical detail have been generalized. Reusing the same transcript across DAP, SOAP, BIRP, and GIRP samples is deliberate — it lets a clinician compare the four reshapings side-by-side and see that the format-awareness is real, not cosmetic. The same session content takes a different shape in each format because the formats themselves are different, not because the model is generating four templated variants of the same thing.
Treatment-plan excerpt pasted in (fictional, used for the sample only):
Goal 2. Reduce frequency and duration of post-conflict rumination episodes from the baseline of 3+ episodes per week lasting 60+ minutes each, to fewer than 2 episodes per week lasting under 30 minutes each, by 90 days, through in-vivo use of cognitive-defusion and reframe skills. Reviewed and signed by clinician and client on session 4.
Goal. Goal 2 of treatment plan dated 2026-02-15 — reduce frequency and duration of post-conflict rumination episodes through in-vivo use of cognitive-defusion and reframe skills, with a 90-day target of fewer than 2 episodes per week under 30 minutes each. This session targeted Goal 2 directly: client reported a workplace-conflict trigger event the prior Tuesday, attempted in-vivo skills use over the weekend, and the session worked the cognitive-defusion-and-reframe skill set against fresh material. Goal 5 (clarify and commit to value-aligned workplace behavior) was secondary to this session and is named below in Intervention segment 2.
Intervention. CBT-and-ACT-integrative session structured in three segments mapped to plan goals. (1) Toward Goal 2: cognitive-defusion skills review. Clinician and client revisited paced breathing and the brief written reframe practiced in prior weeks, with client reporting in-vivo use of both Sunday afternoon to interrupt rumination triggered by the Tuesday workplace incident. Clinician reflected the partial success of the reframe ("got me out of the loop but didn't change how I feel about her") and validated the distinction between rumination interruption and emotional resolution as separate clinical targets within Goal 2. (2) Toward Goal 5: values-clarification revisit anchored to session 6's worksheet. Clinician guided client through identifying which of client's previously articulated values the colleague interaction conflicts with; client identified competence-at-work as the load-bearing value in conflict. Clinician used reflective listening and open-ended questions throughout this segment without offering interpretation. (3) Toward Goal 2 and Goal 5 jointly: behavioral rehearsal preparation. Clinician proposed drafting a 3–4 sentence script for a direct conversation with the colleague before next session, to be roleplayed in session with role reversal; client agreed and named willingness to attempt the conversation in vivo within two weeks of next session.
Response. Client engaged actively across all three intervention segments and demonstrated measurable progress against Goal 2: the Tuesday-trigger rumination episode peaked Sunday afternoon and was interrupted by in-vivo skills use, representing a shorter episode duration than the pre-treatment baseline of 60+ minutes. Client volunteered the values-clarification frame from session 6 without prompting and modulated effectively from rumination-recall mode to skills-practice mode mid-session, which clinician notes as a meaningful change from intake-period sessions. Articulation of the values conflict (competence versus avoidance) was sharper than at intake and reflects integration of session-6 work; client's framing of the reframe's partial success — distinguishing rumination interruption from emotional resolution — was unprompted and clinically apt and represents progress against Goal 2's process indicator. Client expressed willingness to draft the conversation script and attempt in-vivo conversation, with appropriate hedging.
Plan. Toward Goal 2: client to draft a 3–4 sentence script for the colleague conversation prior to next session; in session, roleplay the conversation twice with role reversal. Continue weekly cadence and re-measure rumination-frequency baseline at session 12 per treatment-plan review schedule. Toward Goal 5: revisit values-clarification follow-up at session 12 per treatment plan. Clinician to send the cognitive-defusion handout discussed in session 4 as a reference for the rumination-interruption work. CPT 90834 (45-minute psychotherapy); session ran 50 minutes per recording timestamps. No SI / HI reported or elicited at intake or during session.
Notice the shape. Goal is about 110 words and does the format's whole load-bearing job — names Goal 2 verbatim by number and dated treatment plan, names Goal 5 as the secondary, and tells a reviewer in three sentences exactly which written plan this session worked on. Intervention is about 280 words and is segmented by which goal each segment served — that segmentation by goal is a GIRP-specific shape and is what distinguishes a real GIRP draft from a relabeled BIRP draft. Response is about 170 words and tracks change-markers relative to Goal 2's quantitative target (episode frequency and duration), which is again specific to the goal-anchored format. Plan is six concrete next-step items, each tagged to which goal they advance.
Compare against the BIRP version of this same session — Behavior was 130 words and anchored in observable presentation at session start (affect, speech, psychomotor), Intervention was 230 words and segmented by modality not by goal, Response was tracking the work landing without explicit reference to a numbered plan target, Plan was a flat next-step list. The GIRP reshaping replaces the behavioral-presentation opener with a goal-tied opener, segments Intervention by goal rather than by modality, anchors Response against the goal's quantitative target, and tags every Plan item to a goal. Same session content, two formats, two different things foregrounded — Behavior in BIRP, Goal in GIRP. That is the format-awareness, not a relabeling.
And compare against the DAP version — Data was 240 words and absorbed the entire narrative, Assessment was 75 words on clinical reasoning, Plan was the next-step list. The DAP version doesn't name a treatment-plan goal anywhere. That's not a defect of the DAP version; it's the format. DAP is the right answer in private-practice cash-pay contexts where the chart doesn't need to demonstrate work-toward-a-written-plan. GIRP is the right answer when it does. Picking the right format for the audit context is the clinician's call; TherapyDraft generates whichever you pick and reshapes accordingly.
What "GIRP" means here, briefly
A GIRP note is a progress note structured as four labeled paragraphs:
- Goal. The numbered treatment-plan goal this session targeted, named verbatim by number and short description from the client's signed treatment plan, plus a brief statement of how the session content maps to that goal. If the session genuinely worked on more than one goal, the secondary goals are named here too. Anchors the chart in the written plan. Length: typically 50–90 words for a 50-minute session — focused, not narrative.
- Intervention. What the clinician did in the session, segmented by which goal each segment served, named at the level of modality and at the level of specific technique. Includes the labeled intervention modality (CBT, ACT, EFT, IFS, DBT, motivational interviewing, psychodynamic, integrative, exposure-based), the discrete intervention segments within the session, and what the clinician did in each segment grounded in what actually happened per the transcript. Typically the longest paragraph.
- Response. How the client responded to the intervention, with change-markers tracked relative to the goal's quantitative or qualitative target. Includes engagement level, in-session change markers, articulation of goal-relevant content, affect modulation, and clinical-judgment notes about whether the work landed against the plan.
- Plan. The next-step list, with every item tagged to which goal it advances. Includes homework, between-session tasks, the cadence of upcoming sessions, any referrals, focus areas for the next session, the next plan-review date if applicable, and the CPT-and-time-in-session line if the practice's documentation standard includes it. Functionally a short numbered or bulleted list.
GIRP is the dominant format in Medicaid waiver programs, federally qualified health centers, assertive community treatment teams, intensive outpatient programs, partial hospitalization, residential treatment, school-based behavioral health, and ABA-adjacent practices. BIRP is more common in community mental-health centers, managed-care contexts, and any practice where a behavioral-presentation snapshot anchors the chart. DAP is dominant in private-practice cash-pay talk-therapy. SOAP for private practice is the second-most-common format among LMFTs and LCSWs whose insurance panels or supervisors prefer the medical-format default. TherapyDraft generates all four formats; this page is about GIRP specifically because it's the right answer for clinicians whose audit context wants every session tied back to a written plan.
Why a local GIRP generator is structurally different from a cloud GIRP generator
Every cloud GIRP scribe in market in 2026 — Mentalyc, Upheal, Blueprint, Supanote, Freed, CliniScripts, and the in-product AI scribes shipping inside major EHRs — works the same way at the architectural layer. Audio uploads to the vendor's cloud. The vendor's cloud forwards it to an AI subprocessor for transcription and drafting. The transcript and draft come back, get stored in the vendor's tenant of that subprocessor's storage, and surface in the clinician's web UI. Every link in that chain is covered by the vendor's BAA, and every link is also a new line in the practice's subprocessor inventory and a new breach surface.
For a GIRP-using practice the architectural property of running locally has a particularly sharp edge — sharper than for BIRP, sharper still than for private-practice DAP. GIRP-using contexts are by definition treatment-plan-driven, which means the documentation pipeline includes not only the session audio and the resulting note, but also the written treatment plan itself. A cloud GIRP scribe needs to know the plan to produce a goal-tied draft, which means the plan ends up in the vendor's tenant alongside the transcript. The plan is itself protected health information of a particularly sensitive shape — it names diagnoses, target behaviors, target symptom reductions, sometimes target medication-management goals, and the clinician's clinical reasoning about what to work on. Putting the plan in the cloud expands the breach surface to include the document that synthesizes the entire course of treatment.
The architectural property of running the GIRP generator locally is not better security in the conventional sense — it's the absence of a category of risk. The treatment plan stays in the local encrypted database. The audio stays local. The transcript stays local. The draft stays local. There is no subprocessor chain because there is no cloud. There is no breach surface at the AI vendor because there is no AI vendor. The Mac is the cloud, and the only thing that ever leaves it for this workflow is the typed-or-pasted note that you type-or-paste into your EHR yourself, after reviewing it. For a Medicaid-waiver, FQHC, ACT-team, or IOP clinician whose chart is going to be read by three or four different non-clinician roles and whose treatment plan is the spine of the whole case, that property collapses the whom-has-touched-the-raw-content question to one entry: you.
For practices whose threat model is satisfied by a signed BAA with a reputable cloud scribe, the cloud options are perfectly defensible. The deeper-dive comparison is in the pricing comparison page, and the architectural-vs-contractual argument is laid out in the BAA explainer. This page is for clinicians and practices who already know what they want and are searching for the tool that ships it.
Pricing and free trial
TherapyDraft is $39 per month or $349 per year for the Solo plan, which includes unlimited DAP / SOAP / BIRP / GIRP drafts, all EHR paste presets, the per-client treatment-plan field, the tamper-evident inference attestation log, and the one-shot template matching from your own example notes. Group pricing is $29 per seat per month for practices of 3+ seats — the price most relevant to CMHC, IOP, and Medicaid-funded outpatient clinics where GIRP is the house format. There is a free trial of 10 sessions with no credit card required — see the free-trial page for the trial mechanics.
Pricing context against cloud GIRP scribes: Mentalyc starts at $19.99/mo, Supanote at $39/mo, Upheal at $29/mo, Blueprint at $0.99 per session, and Freed at $99/mo. TherapyDraft sits at the median of that range and uses the architectural-vs-contractual difference, not price, as the wedge. The full breakdown is in the pricing comparison.
Related questions
What kinds of practices use GIRP instead of BIRP?
GIRP is dominant in programs where every session is documented as explicitly tied back to a written treatment plan goal — Medicaid waiver programs (HCBS, 1915(c), 1115 demonstrations), federally qualified health centers, assertive community treatment teams, intensive outpatient programs, partial hospitalization, residential treatment, school-based behavioral health, and ABA-adjacent practices that use a goal-driven progress-note convention. The structural difference between GIRP and BIRP is the first paragraph: GIRP opens with the numbered treatment-plan goal this session targeted, while BIRP opens with the behavioral presentation at session start. Both formats share Intervention, Response, and Plan. Use GIRP when your audit context wants every session to demonstrate work-toward-a-written-goal; use BIRP when your audit context wants a session-level behavioral snapshot. Most large CMHC organizations have a documented preference; ask your supervisor or compliance lead.
Does TherapyDraft know my treatment plan goals?
Yes — you paste the relevant client's active treatment-plan goals into TherapyDraft once, and the model draws the Goal paragraph from that list when generating GIRP notes. The treatment plan stays on your Mac in the same encrypted local database that holds your session audio and transcripts. You can have multiple active goals per client; the model picks the one most clinically relevant to the session content based on the transcript, then names the goal verbatim by its number and short description so the audit trail is unambiguous. If the session genuinely worked on more than one goal, the Goal paragraph names both and the Intervention paragraph segments by goal. When the plan changes — at quarterly review, at recertification, after a 90-day re-assessment — you re-paste the updated plan and the timestamped local audit trail records the change for your own records.
Can I use GIRP for some clients and BIRP or DAP for others?
Yes. The format selector is per-session, not per-client and not global. Practices commonly use GIRP for Medicaid-funded treatment-plan-driven clients, BIRP for managed-care clients where the audit context wants intervention foregrounded without explicit goal-tying, DAP for cash-pay private-practice clients, and SOAP for any client whose insurance panel or supervisor prefers the medical-format default. TherapyDraft supports all four and remembers the most-recent format per client as the default, but the dropdown is one click to override. Switching formats does not require re-recording or re-transcribing — the same transcript is reshaped into the new format using the format-specific prompt scaffolding.
How long are the GIRP paragraphs the model produces?
From a 50-minute session, expect Goal at 50–90 words (it's a focused statement, not a narrative), Intervention at 130–200 words, Response at 90–140 words, and Plan at 40–80 words. The Goal paragraph is intentionally the most compact — its job is to anchor the session in the treatment plan, not to retell the plan. Length is configurable; the "concise" preset compresses every paragraph by about 40 percent and the "thorough" preset expands them by about a third. The default is calibrated to the median treatment-plan-driven GIRP across CMHC, IOP, and FQHC contexts, which lands around 320–390 words total. Practices with stricter or looser documentation standards can set the preset once per client and forget it.
Why ship a GIRP generator that runs on the Mac instead of using a cloud GIRP scribe?
Because the moment your session audio leaves the Mac, you are trusting your scribe vendor's BAA, their AI subprocessor's BAA, their hosting provider's BAA, and the security posture of every employee at every link in the chain — and in the GIRP case, you are trusting the same chain with the client's treatment plan, which the cloud vendor needs in order to produce a goal-tied draft. A local GIRP generator removes that chain from the threat model entirely — the audio never opens a network socket, the transcript never leaves the device, the draft is produced on hardware you physically control, and the treatment plan you pasted in stays on your Mac too. For clinicians working in Medicaid-waiver, FQHC, ACT-team, and IOP contexts where documentation is read by utilization reviewers, contract-compliance staff, and audit auditors, the architectural property collapses the audit trail of who has touched the raw session content to one entry — you. For clinicians whose threat model is satisfied by a cloud BAA, the cloud options are perfectly defensible — this page exists for the segment that wants the architectural answer.
Further reading
- AI BIRP note generator — same transcript, BIRP format, sample side-by-side
- AI DAP note generator — same transcript, DAP format, sample side-by-side
- AI SOAP note generator for private practice — same transcript, SOAP format, sample side-by-side
- On-device therapy note generator — the technical wedge
- Why the network-sandbox entitlement matters
- GIRP paste workflow for SimplePractice
- GIRP paste workflow for TherapyNotes (the EHR)
- GIRP paste workflow for TheraNest
- Pricing comparison across cloud scribes + us
- What a BAA does — and doesn't — cover
- Can an AI therapy note be subpoenaed?
- Join the private beta