Core therapy productivity equation

The main ratio is credited billable minutes divided by paid worked minutes, multiplied by 100. The calculator does not classify an activity or select an employer definition.

productivityPercent = creditedBillableMinutes ÷ paidWorkedMinutes × 100

Clock-out-time equation

Paid work duration is reverse-calculated from credited minutes and the entered target. The duration is rounded down to a completed minute with a small floating-point epsilon. Rounding down prevents the displayed clock-out minute from falling below the entered target. Total unpaid break time is then added to create elapsed clock time.

allowedPaidExact = creditedMinutes ÷ (targetPercent ÷ 100)
allowedPaidWhole = floor(allowedPaidExact + epsilon)
elapsedMinutes = allowedPaidWhole + unpaidBreakMinutes
clockOut = clockIn + elapsedMinutes

Projected productivity is credited minutes divided by the rounded paid duration. Paid nonbillable allowance is whole paid minutes minus credited minutes. If that allowance is negative under a target above 100%, the interface shows a policy note instead of presenting a negative allowance as ordinary free time.

Current-productivity equation

Elapsed time is the difference between clock-in and the current or clock-out time. Total unpaid breaks are removed. Paid worked time must remain greater than zero.

paidWorkedMinutes = elapsedMinutes − unpaidBreakMinutes
currentProductivity = creditedBillableMinutes ÷ paidWorkedMinutes × 100

When an optional target is present, the displayed difference is current productivity minus the target, expressed in percentage points. Above and below are described neutrally.

Required and remaining minutes

The planned shift determines elapsed time. After unpaid breaks are removed, paid time is multiplied by the target rate. A fractional requirement rounds up so the whole-minute requirement does not miss the entered target.

requiredExact = paidWorkedMinutes × (targetPercent ÷ 100)
requiredWhole = ceil(requiredExact − epsilon)
remaining = max(0, requiredWhole − completedMinutes)

If completed credited minutes exceed the required total, remaining becomes zero and the difference is presented as a neutral credited-minute margin.

Elapsed time and cross-midnight shifts

Clock values are stored as integer minutes from the start of a nominal day. If an end time is earlier than a start time, the end is interpreted as the following day and labeled “Next day.” Clock-out addition can also pass midnight and is labeled “Tomorrow.” Durations greater than 24 hours remain valid where the calculator’s accepted ranges permit them.

Paid and unpaid breaks

An unpaid break extends elapsed clock time but is excluded from paid worked minutes. A paid break remains in paid worked time even if it creates no credited billable minutes. Users enter one total for all unpaid breaks. The calculator rejects an unpaid break equal to or greater than elapsed time because paid worked time would be zero or negative.

Credited billable minutes

Credited billable minutes are the productivity-credit total recognized under the policy that applies to the user’s work. They may differ from actual treatment minutes when a facility applies concurrent or group credit percentages. The credited-minutes tool preserves fractional intermediate values and rounds only the final display to at most two decimal places.

8-minute-rule scope

For non-negative whole total timed minutes, values below 8 produce zero units. Otherwise, total units equal floor((minutes + 7) ÷ 15). The generated table covers at least 0–180 minutes. This calculation does not allocate units among CPT codes, determine medical necessity, or decide whether a payer follows Medicare’s rule.

Facility-policy variability

The tools apply user-entered assumptions. They do not determine whether documentation, meetings, paid breaks, group treatment, concurrent treatment, or other duties receive billing or productivity credit. Productivity targets do not override clinical judgment, patient need, timekeeping rules, payer requirements, or professional duties.

Test coverage

Deterministic unit tests cover default examples, rounding boundaries, decimal targets and credits, targets over 100%, invalid ranges, cross-midnight behavior, noon and midnight formatting, minute arithmetic, every 8-minute-rule boundary through 180 minutes, and credited-minute precision. Component tests cover immediate default output, tab semantics, mode changes, and accessible errors. Playwright tests cover production navigation, metadata, canonical URLs, JSON-LD, query import, storage defaults, calculator interaction, clipboard behavior, mobile overflow, console errors, screenshots, and axe checks.

Privacy design

All calculator arithmetic runs in the browser. Application code does not transmit clock times, billable minutes, percentages, results, clipboard text, free text, or URLs containing the import parameter. Explicitly saved defaults use localStorage and contain only target, unpaid break duration, 12/24-hour format, and last-used mode. No third-party analytics or advertising script is installed.

Corrections

Calculation or content corrections should include the affected route, current output, expected output, inputs, and the applicable primary source. A contact link appears only when the site owner configures an address. Until then, the formulas and tests in the repository are the correction record.

Primary sources

These sources provide professional and policy context. They do not endorse or review this independent site.