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 itemWhat to displayWhat “good” looks like
Date rangeStart date, end date, computed daysEnd date ≥ start date; days match your rule
Hours per rowRaw minutes (if used), converted hoursHours align with minutes / 60
Rate per rowLookup key + retrieved rateRetrieved rate matches expected level
Row totalHours × rate (+ multipliers if used)Row totals are non-negative and consistent
Grand totalsFees total, costs total, grand totalReconcile 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