How to Build Physical Therapy Practice Management Software
Physical therapy practice management software needs five systems: scheduling with insurance verification, PT-specific SOAP notes with ROM measurements, home exercise program builder, authorization tracking, and EDI 837 billing. RaftLabs has built clinical platforms and healthcare SaaS products. An MVP costs $150K-$250K and takes 14-20 weeks. The hardest problem is tracking remaining authorized visits per patient before a denied claim hits.
Key Takeaways
- PT SOAP notes differ from general EHR notes. The Objective section must capture range of motion in degrees, manual muscle testing grades (0-5), and standardized outcome measures like DASH and LEFS. Free text alone won't do.
- Insurance authorization is the biggest revenue protection problem. Many payers approve a fixed number of visits per authorization period. Billing a visit after that limit without a new authorization means the claim gets denied. Build an authorization tracker that warns staff at 5 visits remaining.
- An MVP covering scheduling, SOAP notes, exercise programs, and insurance billing costs $150K-$250K and takes 14-20 weeks. A full platform with multi-clinic support, patient portal, and outcome reporting costs $280K-$450K over 24-32 weeks.
- The 8-minute rule governs how PT clinics bill time-based CPT codes. If a therapist provides 7 minutes of therapeutic exercise, they cannot bill for it. Your billing module must enforce this rule automatically or clinics will lose revenue or face audits.
- WebPT dominates the PT software market at $99-$200 per therapist per month. Build custom for multi-clinic groups that need consolidated reporting, or when building a PT-specific SaaS product for a market segment WebPT underserves.
Physical therapy practices lose money in two places. The first is documentation. Therapists spend 40% of their time on notes because the software they have wasn't built for PT-specific clinical workflows. The second is insurance authorization. Practices bill visits without active authorization, the claim gets denied three weeks later, and the revenue is gone.
According to APTA's 2023 Physical Therapy Workforce Analysis, the physical therapy market in the US employs over 240,000 therapists. The overwhelming majority work in outpatient settings where insurance billing and prior authorization are the primary operational challenge.
Building PT practice management software means solving both problems. This post covers the five core systems, the clinical documentation requirements specific to PT, the authorization tracking architecture, and realistic cost and timeline estimates.
What PT practice management software actually covers
PT practice management software is not a general EHR with physical therapy templates bolted on. It has requirements that general medical EHRs don't have.
A full PT platform needs:
Patient intake with insurance verification and authorization management
Scheduling with visit type and authorization tracking per visit
PT-specific SOAP notes with objective measurements (range of motion, strength, functional tests)
Standardized outcome measures submitted by patients and graphed over time
Home exercise program builder with instructional content
Plan of Care documentation for payer compliance
Insurance billing with PT-specific CPT codes and 8-minute rule enforcement
Discharge documentation comparing outcomes to initial baseline
Build the MVP in this order: scheduling and intake, then SOAP notes, then billing. Outcome measures and the HEP builder come in the second phase. Don't build the patient portal until you have the clinical and billing workflows working correctly.
Patient scheduling and insurance verification
The scheduling module for a PT clinic differs from a general medical practice in one important way: every appointment must be tied to an active insurance authorization.
When a patient books an appointment, the system should:
- Look up their insurance and verify active coverage
- Check for an active authorization and confirm the appointment falls within the authorized date range
- Check that the appointment would not exceed the authorized visit count
- Alert the front desk if authorization is missing or nearly exhausted
Most practices manage this with a spreadsheet or by memory. The result is billing visits that aren't covered, getting denials weeks later, and then spending staff time on appeals. Automating the authorization check at the scheduling step prevents most of those denials before they happen.
Insurance verification can be automated via eligibility check APIs. The major clearinghouses (Availity, Change Healthcare, Waystar) provide real-time eligibility verification via API. Build this call into the intake workflow. When a patient's insurance is added, trigger an eligibility check and surface the result in the scheduling UI.
PT-specific SOAP notes
General EHR SOAP note templates don't work for physical therapy. The Objective section in a PT note must capture specific clinical measurements that general EHRs either don't support or handle with generic free text.
PT Objective measurements include:
Range of motion: degrees of movement at specific joints (e.g., right shoulder flexion 0-140 degrees, limited by pain at end range)
Manual muscle testing: grades 0-5 per muscle group (0 = no contraction, 3 = full ROM against gravity, 5 = normal)
Pain scale: numeric rating 0-10, with location and quality
Functional tests: timed up-and-go, single leg stance, functional reach
The note interface should present these as structured fields: drop-downs for joint names and movement planes, numeric inputs with degree validation for ROM, a 0-5 grade selector for MMT. Free text in the Objective section leads to inconsistent data that can't be aggregated for outcomes reporting.
The Subjective section captures patient-reported information: pain level since last visit, functional improvements, adherence to the home exercise program. The Assessment section documents the therapist's clinical reasoning. The Plan section records changes to treatment and the plan for the next visit.
PT notes are reviewed by payers during audits. A note that doesn't document the clinical rationale for the treatment provided is a billing risk. Your note templates should make it easy to document medical necessity, not just capture measurements.
Home exercise program builder
Every PT patient receives a home exercise program (HEP): a set of exercises to perform between clinic visits. The HEP is a core part of PT treatment, not an optional feature.
The HEP builder needs:
An exercise library with images or video demonstrating correct form
Per-exercise settings: sets, reps or hold duration, frequency per week, any special instructions
The ability to assign a subset of exercises to a specific patient and visit
Output in two formats: printable PDF for patients without smartphones, and a patient-facing digital view for those who prefer it
The exercise library is the hardest part to build from scratch. A full library needs 500-1,000 exercises across body regions and difficulty levels, each with clinical-quality images or video. You have two options: build or license. Licensing an existing exercise library (HEP2go, Handyfoot, Physiotec) and building your own UI on top of it is faster and less expensive than creating clinical content from scratch.
The digital patient app for HEP delivery is often requested but rarely used in the MVP. Build the PDF output first. Add the patient app in a later phase once you have clinical adoption.
Insurance authorization tracking
"Prior authorization requirements for physical therapy have increased significantly over the past decade, with payers imposing stricter visit limits and shorter authorization windows. Practices that don't build automated tracking face growing denial rates." -- American Physical Therapy Association, Medicare and Payer Policy Report, 2023
This is the hardest problem in PT software and the one most practices manage badly.
Many payers require prior authorization before approving PT visits. The authorization covers a specific patient, a date range (often 60-90 days), and a number of visits. Some authorizations also specify which CPT codes are covered.
Your system needs to track, per patient:
Active authorization number
Number of visits authorized
Visits used (linked to appointments that have been billed)
Visits remaining
Authorization expiration date
Specific CPT codes covered (when applicable)
When remaining visits fall to 5, the system should alert the front desk to start the re-authorization process. Most payers take 5-10 business days to process a new authorization request. If you wait until visits hit zero, the practice is either turning away a patient or billing visits without authorization. Both are bad outcomes.
The alert threshold (5 visits) should be configurable per payer, because some payers respond faster than others. Build this as a payer-level setting, not a hardcoded number.
Track authorization status at the appointment level, not just the patient level. Each appointment record should store which authorization it was billed under, so you have an audit trail if a payer audits claim records.
Plan of Care management
Payers require a Plan of Care (POC) before authorizing PT treatment. The POC is generated from the initial evaluation and documents:
Diagnosis codes (ICD-10) and the functional deficits being treated
Treatment goals (short-term and long-term), written as measurable functional outcomes
Proposed frequency and duration (e.g., 2x per week for 8 weeks)
Prognosis for achieving the stated goals
The POC must be signed by the supervising therapist and, in many cases, sent to the referring physician for co-signature before treatment begins. Your system should generate the POC document from structured data entered during the evaluation, not require the therapist to re-enter information they already documented in the SOAP note.
Physician co-signature tracking is a workflow pain point. Build a simple outbound fax or secure email workflow that sends the POC to the referring physician and tracks whether a signed copy has been returned. Many practices track this on a whiteboard.
Insurance billing: CPT codes and the 8-minute rule
The CMS Medicare Physician Fee Schedule defines the reimbursement rates and time requirements for all PT CPT codes. The 8-minute rule comes directly from CMS guidelines and applies to all time-based therapeutic codes billed to Medicare and most commercial payers.
PT billing uses time-based CPT codes. The most common are:
97110: Therapeutic exercise, one or more areas, each 15 minutes
97530: Therapeutic activities, each 15 minutes
97001: PT evaluation (low, moderate, or high complexity)
97002: PT re-evaluation
Time-based codes follow the 8-minute rule: you must provide at least 8 minutes of a service to bill one unit. For 2 units, you need 23 minutes (8+15). The billing module must calculate billable units from documented treatment time and flag any service that falls below the 8-minute threshold.
Claims are submitted via EDI 837 format through a clearinghouse. Major clearinghouses include Availity, Change Healthcare, and Waystar. The clearinghouse validates claim format and routes to the correct payer. Your billing module needs to generate a valid 837P transaction set and submit via the clearinghouse API or SFTP.
After submission, the clearinghouse returns an 835 remittance file with adjudication results. Your system should parse the 835, post payments to the correct claims, and surface denials with the denial reason code for staff review.
Build costs and timeline
Option 1: MVP. Scope: scheduling, insurance verification, PT SOAP notes, HEP builder, authorization tracking, EDI 837 billing. Timeline: 14-20 weeks. Team: 2 senior backend, 1 frontend, 1 designer. Cost: $150,000-$250,000. Running cost: $1,500-$3,500 per month.
Option 2: Full platform. Everything in Option 1 plus multi-clinic support, patient portal, standardized outcome measures with graphing, plan of care with physician co-signature workflow, advanced analytics and payer reporting. Timeline: 24-32 weeks. Team: 3 senior backend, 2 frontend, 1 designer. Cost: $280,000-$450,000. Running cost: $3,000-$6,000 per month.
Option 3: Buy and customize. WebPT is the dominant PT platform at $99-$200 per therapist per month. Clinicient, Jane App ($74-$174/month), and Raintree are the main alternatives. For a practice with 5-15 therapists, buying is almost always cheaper than building. Build custom when you're running 20 or more therapists across multiple clinics and need consolidated reporting, or when you're building a SaaS product for a specific PT market segment that existing vendors underserve.
Technology decisions specific to PT software
HIPAA compliance shapes your infrastructure choices. All PHI must be encrypted in transit and at rest. Your data store needs audit logging at the row level. Access control must enforce role-based permissions. Front desk staff should not see clinical notes. Therapists should not see billing records unless they're the treating clinician.
For clinical data storage, PostgreSQL handles PT records well. The schema needs to support structured measurements (ROM, MMT grades) as typed fields, not free text, to enable outcomes aggregation. Store the structured measurement data in typed columns; store the narrative text in a separate field.
For document storage, use S3-compatible object storage for HEP PDFs, referral documents, and signed Plan of Care forms. Never store documents in your relational database.
For clearinghouse integration, build the EDI 837 generation as a standalone service. The 837 format is complex and payer-specific edge cases accumulate quickly. Isolating it makes testing and payer-specific overrides manageable.
RaftLabs has built clinical platforms and healthcare SaaS products. See our healthcare software development service or talk to us about your architecture.
Frequently asked questions
- An MVP covering patient scheduling, insurance verification, PT SOAP notes, home exercise programs, and EDI 837 billing costs $150K-$250K and takes 14-20 weeks. A full platform with multi-clinic management, patient portal, outcome measure tracking, and advanced reporting costs $280K-$450K over 24-32 weeks. Infrastructure costs post-launch run $1,500-$4,000 per month depending on patient volume and storage requirements.
- The core PT CPT codes are: 97110 (therapeutic exercise), 97530 (therapeutic activities), 97001 (PT evaluation), 97002 (PT re-evaluation), 97150 (therapeutic procedure, group), 97012 (mechanical traction), and 97014 (electrical stimulation). Time-based codes require 8-minute rule compliance. Your billing module must enforce minimum time thresholds per code. Evaluation and re-evaluation codes are complexity-based, not time-based.
- Insurance authorization tracking. Many payers require prior authorization before approving PT visits. The authorization specifies how many visits are approved, the date range, and sometimes specific procedure codes. Your system must track remaining authorized visits per patient per authorization period and alert staff when a patient is within 5 visits of their limit. Without this, practices bill visits without active authorization and face claim denials, often discovering the problem weeks later when remittances arrive.
- Use WebPT ($99-$200 per therapist per month) for single-clinic or small multi-clinic practices. Build custom when you operate 5 or more clinics and need consolidated financial and outcomes reporting across locations, when you're building a SaaS product for a PT market segment (pediatric PT, sports rehab, hospital-based PT), or when your workflow has requirements that no existing vendor supports. The break-even point for building versus buying typically occurs around 15-20 full-time therapists.
- The most commonly required standardized outcome measures are: DASH (Disability of Arm, Shoulder and Hand) for upper extremity, LEFS (Lower Extremity Functional Scale) for lower extremity, Oswestry Low Back Disability Index for spine, PSFS (Patient-Specific Functional Scale) for any region, and the numeric pain rating scale (0-10). These questionnaires are submitted by patients and scored automatically. The system should graph scores over time and compare initial evaluation scores to discharge scores for outcomes reporting.
Ask an AI
Get an instant summary of this post from your preferred AI assistant.
Related articles

How to Build a Customer Loyalty and Rewards Platform
Smile.io charges $49-$999/month for loyalty programs. Brands with high transaction volume or complex tier structures outgrow off-the-shelf tools. Here is what it takes to build your own: points ledger design, earning rules, tier logic, redemption, and when building pays off.

How to Build a Productivity App Like Notion: Block Editor, Databases, and What Makes Notion Hard to Replicate
Notion costs $8-$15 per user per month. A 200-person company pays $19K-$36K per year. The real reason to build custom is not the cost. It is workflow specificity, data residency, and the fact that you cannot embed Notion inside your own SaaS product.

How to Build Medical Billing Company Software
A technical guide to building medical billing software with EDI 837/835 claim processing, denial management by reason code, and multi-provider AR reporting.
