Spreadsheet checks before running attorney fee calculations in North Carolina
6 min read
Published April 15, 2026 • By DocketMath Team
What the checker catches
Run this scenario in DocketMath using the Attorney Fee calculator.
Before you run an attorney fee calculation in North Carolina, a spreadsheet sanity check can prevent the most common “garbage in, garbage out” problems: wrong time basis, misapplied totals, and hidden unit/format errors. DocketMath’s attorney-fee tool helps you calculate quickly—but the spreadsheet still needs guardrails.
Here’s what a solid checker catches in practice:
1) Date math and elapsed-time drift
Attorney fee inputs often rely on date ranges (for example, start/end dates, or “hours in a period”). Errors can look subtle but still produce believable totals. Typical symptoms include:
- Negative durations (end date earlier than start date)
- Off-by-one day issues (inclusive vs. exclusive counting)
- Silent date changes from formatting conversions or mixed “text vs date” columns
Quick check
- Confirm every date cell is a real date type (not text).
- Verify that each duration cell matches your intended counting rule (for example, “difference in days” vs. “days + 1”).
2) Hour conversions and unit mismatches
A frequent failure mode is mixing units or converting multiple times. Common examples:
- Minutes entered as decimals (for example, “30” entered as 30 minutes but treated like 30 hours)
- Rounding at the wrong stage (rounding before multiplying instead of rounding after summing)
Quick check
- Use one source of truth: either keep “minutes” and convert once, or keep “hours” everywhere.
- Add a reconciliation line:
- **total minutes = sum(all minute rows)
- total hours = total minutes / 60
3) Rate selection and column misalignment
If your sheet looks up rates (partner/associate levels, hourly rates, multipliers) from a table, small indexing mistakes can apply the wrong rate to the wrong row.
Quick check
- Spot-check 3–5 rows: verify that the “task/level key” matches the rate the lookup pulled.
- Add a “Rate audit” column that shows:
- the lookup key used, and
- the retrieved rate
- If those don’t clearly match what you expect, fix the lookup before calculating fees.
4) Sign errors and cumulative totals
Spreadsheet models often fail through directionality and aggregation:
- Costs entered as negative values when your model expects positive numbers
- A multiplier applied to the wrong subtotal
- Cumulative totals that overwrite instead of append (especially when copying formulas)
Quick check
- Confirm that money inputs that should be positive are positive.
- Add a “sum of parts” reconciliation (where applicable in your model):
- Grand Total = Fees Total + Costs Total
- If the math doesn’t reconcile, stop—don’t try to “optimize” by adjusting legal assumptions.
5) Statute-driven timing assumptions (North Carolina)
Many spreadsheets include a “within limitations period” flag or filter a list of invoice entries by date.
For North Carolina, the general/default limitations period is 3 years. In this brief context, no claim-type-specific sub-rule was found, so treat 3 years as the general/default period in your spreadsheet logic unless you have a separate basis to apply a different rule. (See background context from the NC Department of Justice’s Supporting Victims and Survivors of Sexual Assault page: https://www.ncdoj.gov/public-protection/supporting-victims-and-survivors-of-sexual-assault/.)
Pitfall: If your sheet filters entries “older than 3 years” using an assumed event date, the output can look plausible while being wrong. Add an explicit “limitations start date” cell and show it in the output summary.
When to run it
Run the checker at decision points, not only at the end. For a North Carolina (US-NC) attorney-fee spreadsheet, a practical cadence is:
Run the checker before importing a spreadsheet into the Attorney Fee workflow. It is especially helpful when you have multiple entries or when a teammate provided the inputs.
Before you calculate anything
Use the checker after you:
- Import billing data (CSV export or copy/paste)
- Update rate tables (hourly rates, partner/associate levels, multipliers)
- Change the time window for the fee period
Checklist
After you change assumptions
Treat assumptions as “high blast radius” changes. Re-run immediately after:
- Modifying the limitations-period logic using the 3-year general/default period
- Switching from “hours worked” to “hours billed” (or vice versa)
- Adjusting rounding rules (round per line vs. round after totals)
When you get unexpected outputs
If results jump suddenly (for example, hours double, totals go to zero, or rates don’t change but fees do), stop and run the checker before revisiting legal theories.
Try the checker
DocketMath’s attorney-fee workflow is most useful when your spreadsheet passes a few structural tests before you feed it results.
Upload the spreadsheet, review the warnings, and then run the calculation once the inputs are clean: Try the checker.
Step 1: Create an “audit view” tab
Add a lightweight table that shows key computed values without exposing the entire calculation complexity:
| Audit item | What to display | What “good” looks like |
|---|---|---|
| Date range | Start date, end date, computed days | End date ≥ start date; days match your rule |
| Hours per row | Raw minutes (if used), converted hours | Hours align with minutes / 60 |
| Rate per row | Lookup key + retrieved rate | Retrieved rate matches expected level |
| Row total | Hours × rate (+ multipliers if used) | Row totals are non-negative and consistent |
| Grand totals | Fees total, costs total, grand total | Reconcile arithmetic: fees + costs = grand total |
Step 2: Sanity thresholds (fast wins)
Apply simple “does this look right?” flags:
- If any row has hours > 16 in a single day (or your own internal policy), flag it for review.
- If a rate is blank or zero for billed work, flag it.
- If grand totals remain exactly the same after changing a rate table, flag it (a common sign of a lookup not refreshing).
Step 3: Confirm your limitations-period filter uses the 3-year default
North Carolina’s general/default limitations period is 3 years. Since no claim-type-specific sub-rule was found here, your checker should treat 3 years as the general rule unless you have a clear, separate basis for an exception.
Spreadsheet guardrail
- Keep a single cell for “limitations cutoff date.”
- Filter by entry date ≤ cutoff date.
- Output visibility values like:
- “Entries included: 34”
- “Total excluded: 12”
Warning: Don’t bury the cutoff date inside a formula. If you rerun the model later, teammates should see the exact cutoff date in the audit view.
Step 4: Run DocketMath after the spreadsheet passes
When you’re ready, run DocketMath’s attorney-fee tool from: /tools/attorney-fee
Then compare:
- Total hours (spreadsheet) vs. total hours (tool)
- Total fees (spreadsheet) vs. total fees (tool)
- Any row-level mismatches you can trace back to units, rounding, or rate lookup
If differences occur, revisit the audit view first—most discrepancies come from formatting or unit issues rather than the calculation engine.
Related reading
- Worked example: attorney fee calculations in Vermont — Worked example with real statute citations
