River
Y CombinatorBacked by Y Combinator
FREE TEMPLATE

Outside Counsel Guidelines Compliance Pack

Two documents and three sheets that join the approved staffing and rate roster against who is actually billing, before a gap becomes a write-down.

Free download  ·  No account needed

Staffing and Rate Compliance Check  ·  one quarter, one matter team

Three flagged rows, found by joining the roster against the invoice

Not three separate reviews. One sheet, checking who is approved against who is actually billing, at what rate, since when.

ItemOn the approved rosterWhat was on fileWhat was actually billedExposure
D. Whitfield, first-year associateNoNo consent request on file22.4 hrs at $310/hr, Feb 10–Apr 5$6,944
B. Renshaw, senior associateYes, at $475/hrNo 60-day notice on file for a change41.2 hrs at $510/hr, Mar 1–Apr 5$1,442
Quarterly phase budgetApproved at $175,000Signed exception on file for $12,000Actual: $193,400$6,400

The number that matters is the one after the exception is subtracted

Total precise exposure: $14,786. A flat 10% e-billing reduction applied to the same invoice, the blunt instrument a team reaches for when nobody has separated a covered exception from an uncovered one, would take $19,340 out of the bill, $4,554 more than what is actually exposed, out of amounts the team could otherwise defend with a dated record.

The $12,000 exception covers part of the budget overage. It does not cover the first-year associate or the rate change, and a sheet that only tracks one number per category cannot show that.

Outside counsel guidelines read like one document, but their requirements do not all become checkable at the same moment. This pack sorts every rule by when it triggers: before staffing starts, before a rate change takes effect, continuously on every entry, or before an overage is incurred rather than invoiced. A rate increase billed before notice clears stays exposed for every hour at the new rate. ABA Model Rule 1.5(b) requires any change in the rate to be communicated to the client, not disclosed on the invoice after the fact.

The Staffing and Rate Compliance Check is the join nobody else runs: the approved roster, with each timekeeper's rate and effective date, against who is actually billing the matter right now. A name on the invoice with no match on the roster is a flat exposure at whatever rate was billed. A name that matches, but at a rate that changed before notice cleared, is exposed only for the differential. A blanket write-down or a flat e-billing cut cannot see that difference, because neither one separates an approved name from an unapproved rate.

The Exception Log carries every departure a client actually signed off on, dated and scoped to a specific amount, so a signed approval for part of a budget overage is never read as clearing all of it. Overstaffing a matter to run up hours is not properly earning the fee at all, which is the ethical floor behind a client's staffing cap, and the register checks the roster against that floor rather than against good intentions. Terms it applies come from the engagement letter the matter opened on.

The three sheets, and how they cross-check each other

The Requirement Register, the Staffing and Rate Compliance Check and the Exception Log.

Requirement Register by category

Fourteen rows from Anchorline's guidelines, sorted by category and by when each one actually has to be checked.

CategoryRequirementTriggerStatus
RatesAny rate change needs 60 days' written notice plus client approval before it takes effectBefore a change takes effectFlagged
StaffingFirst-year associates may not bill without prior written client consentBefore work startsFlagged
BudgetsWritten sign-off required before incurring an overage past $15,000Before incurringPartly cleared
TimekeepingNo block billing; discrete tasks in separate entriesContinuouslyChecked elsewhere

Two columns most checklists collapse into one

Category and trigger are not the same axis. Two rate rules on this register have different triggers: the rate schedule itself locks before work starts, while a change to it is checked before that change takes effect. A register sorted only by category files both under Rates and loses the distinction that made the second one exposed.

Staffing and Rate Compliance Check

The approved roster joined against who actually billed the matter this quarter.

TimekeeperApprovedRate billedHoursExposure
A. Torvald, partnerYes, $695/hr$695/hr130.6$0
B. Renshaw, senior associateYes, $475/hr$510/hr41.2$1,442
D. Whitfield, first-yearNo$310/hr22.4$6,944

The flagged rows are the join, not a lookup

D. Whitfield never appears on the approved side at all. A sheet checking only the invoice against a rate card would price her hours as correct, since $310 was in fact the going rate for a first-year. The flag exists only because the approved-roster column has no matching name.

B. Renshaw is approved, which is what makes the exposure narrow rather than total. Only the $35/hr difference between the approved and billed rate is exposed, for the hours billed before notice cleared, not the full $510 rate.

Exception Log

Every departure requested this quarter, granted, denied, or unanswered.

RefDeparts fromRequestedGrantedStatus
EXC-002Budget overage past $15,000$12,000$12,000Granted, forward-dated
EXC-003Rate change noticeRetroactive to Mar 1Denied
EXC-004First-year consent22.4 hrs at $310/hrNo response, treated as denied

EXC-002 is why the budget line reads $6,400 and not $18,400

The signed exception is real and it is partial. $12,000 of the $18,400 overage is a cleared decision the client already made. The remaining $6,400 gets exactly the same scrutiny it would have gotten with no exception on file at all, because the log tracks the amount actually granted, not the existence of a signed email.

What's in the pack

01

Requirement Register by category

Every testable rule from the guidelines, cited to its section, sorted by category and by the trigger that actually governs when it gets checked.

02

Staffing and Rate Compliance Check

The approved roster joined against who is actually billing, at what rate and since when, with the dollar exposure computed on every flagged row.

03

Exception Log

Every departure requested this matter, granted, denied or unanswered, with the amount actually covered kept separate from the amount asked for.

04

Compliance Summary

The one-page version for a timekeeper joining the matter mid-stream, rebuilt each cycle from the other three artifacts rather than edited forward.

05

Exception Request Format

A form that names the specific requirement, the exact amount or scope, and a decision deadline, so an answer can actually be logged either way.

How to use it

  1. 1

    Open in River, or take it blank

    Open the pack in River and hand it the client's guidelines and current matter team, or download the Word documents and CSV sheets from the template library and run it yourself.

  2. 2

    Sort the guidelines by trigger, not by section

    Read every rule into a category and, separately, into when it actually has to be checked. The two axes do not line up the way the document's own headings suggest.

  3. 3

    Join the roster against who is actually billing

    Match the approved timekeepers and rates against the real time entries. An unmatched name or an unmatched rate is the exposure, computed on the row.

  4. 4

    Log every exception, granted or not

    Give each request a dated, scoped record, so a partial approval stays partial instead of being read as clearing the whole flagged amount.

Frequently asked questions

Is this template free?

Yes, and there is no account or card required. The download is Word documents and CSV sheets in a zip. Edit with AI is the second half: the agent reads the guidelines, builds the register sorted by trigger, and runs the staffing and rate join against the current matter team.

What am I actually downloading?

Two Word documents and three CSV sheets, zipped. The sheets open in Excel, Numbers or Google Sheets straight off the download, and the two documents open in Word or Pages. Nothing in the zip needs River to be useful.

How is this different from checking an invoice before it goes out?

It runs earlier. Checking codes and narratives against the guidelines at invoice time is its own pass. This pack covers what has to be caught before that: whether the person billing was ever approved, and whether a rate change cleared its notice period before it applied.

What if the guidelines don't specify a notice period for rate changes?

Then the underlying duty still applies. ABA Model Rule 1.5(b) requires any change in the basis or rate of a fee to be communicated to the client, regardless of what a specific guideline spells out. The Requirement Register carries that as a floor even where the client's own document stays silent on timing.

Does a signed exception clear the whole flagged amount?

Only for the amount and scope it actually states. A $12,000 exception against an $18,400 overage leaves $6,400 exposed, and the log records both numbers rather than treating any signed approval as clearing the category it touches.

Who should actually run the staffing and rate join, and how often?

Whoever manages billing for the matter, run at least once a billing cycle and again whenever a new timekeeper is added. It catches an unapproved name or an early rate change while it is a handful of hours, not a quarter's invoice.

How does this fit with the other legal packs?

This one covers guideline compliance for the team while work is happening. The rate schedule it checks against usually starts from the budget the matter was quoted at, and the entries it clears feed into the line-by-line invoice review before anything is submitted.

Check the roster before the invoice does

Take the Word documents and CSV sheets blank, or open this exact pack in River and hand it the client's guidelines and matter team.

Edit with AI