Bill Your Time Today - the better way. Turn any billable task into a polished and client compliant billing narrative in seconds. The value of your legal services can never be assumed by your clients - it's communicated.
Paste a blurb about a billable task you just completed. The generator will return a polished 20-25 word narrative using the full ATVR framework calibrated to your role.
Paste relevant excerpts from your client's billing guidelines, upload a PDF, or pick a saved set from your Vault. The generator will check the narrative against these rules.
Capture the complete work cycle as three connected entries - the strategic prep before the main event, the event itself, and the substantive follow-up after. Nothing left on the table.
Paste client-specific billing rules, upload a PDF, or pick a saved set from your Vault. Bookend narratives will be drafted to comply.
Defeat block billing. Take a large project (MSJ, purchase agreement, trial prep) and break it up into four unbundled narratives - review/analyze, outlining/strategy, preparation/drafting, finalizing/review - so nothing reads as block billing.
Paste client-specific billing rules, upload a PDF, or pick a saved set from your Vault. Each phase narrative will be drafted to comply.
Catch what bill review will flag - before it ever gets there.
Same review, two jobs. Pick whose time you're checking:
Partner-level review of one client's draft bill before it goes out, with each matter mapped to its own carrier guidelines.
Upload a single-matter pro forma and the Pre-Check reviews every entry against your client's outside counsel guidelines and ATVR best practices. It surfaces:
Designed for partner-level review of a single client's pro forma before invoicing. Each matter can be mapped to its specific carrier or client guidelines from your Vault for compliance-aware review.
Reviewing your own time across a whole month instead? Switch to My own month above. Like all Pre-Checks, this is a first-pass assistant; partner-level judgment and final review remain with you.
PDF format. Multi-page documents up to 8MB are supported. Most pro formas from Aderant, Elite, ProLaw, Centerbase, Clio, Smokeball, and similar billing systems work out of the box.
Export your full monthly time report from your billing software and upload it here. The Pre-Check scans every entry across every matter you billed and surfaces:
Designed for timekeepers reviewing their own time across the whole month before submitting to the firm. Processes matters in parallel - finishes in roughly the same time whether you have 50 entries or 400+.
Reviewing a client's draft bill instead, with per-matter carrier guidelines? Switch to A client's pro forma above. Like all Pre-Checks, this is a first-pass assistant; final review remains with you.
PDF format. Up to 12MB supported.
The rest of the Generator prevents write-downs. This tab recovers them.
Upload or paste billing that has already come back from a carrier's bill review - reduced, cut, or flagged as non-compliant. Each reduced line is read together with the carrier's stated reason and sorted into one of three outcomes:
The sorting matters more than the rewriting. A polished rewrite of a reduction that was substantively correct gets re-cut and costs you credibility with that carrier - so this tab tells you plainly when not to resubmit.
Upload the carrier's audit however it arrived - Excel, CSV, PDF, or a returned LEDES file - or copy the reduction table straight off the portal screen. Column order doesn't matter either way, and the file is read on this device and never uploaded anywhere. Include the carrier's stated reason for each reduction: without it, a line can only be flagged for your input, never rewritten.
Save carrier billing guidelines, client-specific rules, or matter-level instructions for instant reuse on any tab. Your guidelines stay on your device only - they never touch The Billing Coach's servers. Use Export to back up or move them between devices.
The 30-second version. Type or paste what you actually did. Hit generate. Get a polished ATVR narrative. Copy into your billing software. Move on with your day.
1. Generate Narratives. Everything that turns work into narratives is here, and the row of buttons at the top picks the shape your work is in. One Task is your default and the move you'll use most days - paste a plain-English description of what you just finished and get a polished 20-25 word ATVR narrative back. Multiple Narratives takes up to 20 rows in one batch, grouped by matter. Quick Capture is the real-time power tool: jot down date, time, client and what you did as you go, and the generator reads your shorthand. Billing Bookends captures the full work cycle - the strategic prep before a task, the event, and the substantive follow-up after - which is where most attorneys leave time on the table. Break It Up takes a big project you'd otherwise block bill and splits it into four phase narratives that each stand alone.
2. Billing Pre-Check. Catch what bill review will flag, before it gets there. One tab, two modes - the switch at the top picks which. A client's pro forma is partner-level review before the invoice goes out: upload the PDF, map each matter to its guidelines from your Vault, get back a structured report with a suggested rewrite for each finding. My own month is the timekeeper's version: upload your full monthly time export and every entry across every matter gets checked at once, plus duplicate detection and repeated-narrative cleanup. Same review either way - what changes is whose time it is.
3. Audit Response. For billing that has already come back cut. Paste the reduction table off the carrier's portal, pick the guidelines that governed the bill, and every reduced line lands in one of three piles: ready to resubmit (with a compliant rewrite), needs your input (a specific question plus a fill-in-the-blank template), or not a narrative fix (write off or appeal). Every other tab prevents write-downs - this one recovers them, and tells you plainly when not to bother.
4. Email Capture. The .1s and .2s that vanish into a busy inbox. Export a day or a week of sent mail, drop the file in, and tell it once which recipient domains belong to which matter - it remembers thereafter. Every entry comes back as a draft you review, and anything the subject line won't support comes back flagged rather than invented.
5. Client Billing Guidelines. Save carrier and client billing guidelines once, apply them with a dropdown click on any generator tab, and the Pre-Checks review against them too. Each generated narrative will then be written to comply with whatever you've loaded. Your saved guidelines stay on your device only - never on a server. Use Export to back up or move to another device.
Billing Training is in the header rather than the tab row - it's your Group Billing Training Portal, embedded right in the app. If your firm is enrolled, your license key carries you straight in.
Your private training library - the sessions, blueprints, and bluebooks behind the frameworks this tool runs on. Included free with your Billing Generator license, for as long as your license is active.
Prefer a full window? Open the training portal in a new tab →
The .1s and .2s that disappear into a busy inbox are real hours. Export a day or a week of sent mail, drop the file here, and review the entries instead of reconstructing them from memory.
Only the columns in your export are read, and only for the emails you assign to a matter. The file itself never leaves this device. Full message bodies are never exported, never read and never sent.
Written for whoever has to sign off on this: your IT team, your InfoSec people, or your general counsel. Every statement below describes how the feature is built, not how we intend to behave.
| Data | Disposition |
|---|---|
| The export file itself | Stays on device |
| Full message bodies (pasted threads only) | Stays on device |
| Messages other people sent you (pasted threads only) | Discarded on device |
| Attachments | Never exported |
| Recipient and sender addresses | Stays on device |
| Subject line (mapped matters only) | Sent for generation |
| Preview text, capped at 300 characters (mapped matters only) | Sent for generation |
| Matter name, date and time increment | Sent for generation |
| Your matter map (domains and the labels you typed) | Stored on our server |
| The draft entries under review | Stays on device |
Nothing is sent for a domain you have not mapped to a matter. A sensitive client
can be marked Ignore and their correspondence never leaves this
device - not the subject, not the preview, not the fact the exchange happened.
Every new domain starts unassigned, so the default is that nothing is sent.
Generation runs on Anthropic's commercial API. Inputs and outputs are retained up to 30 days for abuse monitoring, then deleted automatically, and are not used to train models. Encrypted in transit and at rest. Zero Data Retention is reserved for enterprise accounts meeting volume thresholds and is not part of this tool's configuration - stated here rather than left for your GC to find. If your firm needs a posture beyond the 30-day standard, get in touch and we will walk your IT or InfoSec team through it.
In Outlook, open the conversation. Click into it, press Ctrl+A then Ctrl+C, and paste it here.
·
A conversation starting Monday and finishing Wednesday comes back as three entries, one per day, each carrying its own time. You bill the day you did the work. Within one day, everything you sent that client rolls into a single entry with each part carrying its own increment.
What you paste is read here in your browser and never uploaded. Messages other people wrote are used only to work out which ones are yours, then discarded. Of your own messages, only the subject line and the first 300 characters go out to write the narrative, and only for the matters you map.
Set up once by whoever administers your Microsoft 365 tenant, then about thirty seconds a day for you. The daily part is below; the setup spec underneath it is written for them, not for you.
.csv somewhere you can find it.Then map any new recipient domains to a matter - you only ever do that once per client - and hit Build My Entries.
Outlook's built-in Import/Export wizard cannot export a sent date for mail. The file it produces has subjects and recipients but no timestamps, so it will be rejected here - the date is what groups a day's correspondence. It is a genuine limitation of the wizard, not something you have configured wrongly. Use the flow below instead.
About fifteen minutes in Power Automate. Four actions:
GET:
https://graph.microsoft.com/v1.0/me/mailFolders/SentItems/messages?$top=999&$orderby=sentDateTime desc&$select=id,conversationId,sentDateTime,subject,bodyPreview,hasAttachments,from,toRecipients,ccRecipients&$filter=sentDateTime ge @{formatDateTime(startOfDay(utcNow()),'yyyy-MM-ddTHH:mm:ssZ')}
Not the Get emails (V3) action. That one is capped at 25 messages per run, and it fails silently - a busy day just arrives three-quarters missing with nothing to indicate it. The Graph call above returns up to 999.
body('Send_an_HTTP_request')?['value'], mapping these exact column
names:
Id → item()?['id']ConversationId → item()?['conversationId']SentDateTime → item()?['sentDateTime']From → item()?['from']?['emailAddress']?['address']ToRecipients → join(select(item()?['toRecipients'], item()?['emailAddress']?['address']), ';')CcRecipients → join(select(item()?['ccRecipients'], item()?['emailAddress']?['address']), ';')Subject → item()?['subject']BodyPreview → item()?['bodyPreview']HasAttachments → item()?['hasAttachments']
If the two recipient expressions error on the nested item(),
build those with an Apply to each and an array variable instead - the
output just needs addresses separated by semicolons.
Names are matched loosely, so sent_datetime, SentDateTime
and Date Sent all work.
subject and sent_datetime - requiredto_addresses - required, this is how matters get matchedconversation_id - groups a rapid back-and-forth into one entrybody_preview - the truncated preview only, never the full bodyhas_attachments, cc_addresses, message_id - optional, all improve the resultbody_word_count - optional and not available from Graph directly; without it the time tier is estimated from the preview instead
bodyPreview is Microsoft's own truncated preview, roughly the first
255 characters. Full message bodies are never read, never exported and never
sent anywhere. The flow runs inside your own tenant, and the CSV goes to the
timekeeper, not to us.
Assign each address or domain to a matter once and it is remembered for every future upload. Anything left as Unassigned is skipped.
Every entry is a draft until you accept it. Read each one against what you actually did - including the time. The figures are estimates; confirming they reflect work you actually performed is your responsibility, not the tool's.
These come from a fixed rule, not from the AI. It is told the number and told to reproduce it exactly; it never chooses one. Same input, same time, every run.
| The email | Time |
|---|---|
| Under 15 words, nothing attachedA bare acknowledgement. “Thanks”, “Confirmed”, “Will do”. | Not billed |
| A reply under 75 wordsShort, and answering something already in front of you. | .1 |
| 75 words or moreLong enough to have taken composing. | .2 |
| Anything with an attachmentSomething was assembled or reviewed alongside it. | .2 |
| One you started, not a replyOpening a subject takes more than answering one. | .2 |
| Over 250 wordsAlmost certainly worth more than .2 - but it will not guess how much. | .2 + flagged |
An entry covering a whole day is the sum of its parts, and each part carries its own marker so you can see the arithmetic: …the late-notice defense (.2); …the handling protocol (.2); …missing claim file materials (.1) That entry reads 0.5, and the three markers add to it.
Length stands in for effort, which is rough: a two-line email that took twenty minutes of thinking still comes back .1. So it errs low and never claims above .2 on its own - anything longer is flagged for you to set. A defensible .1 you actually captured beats a .3 you have to argue for. Every number here is editable before you accept it.
Pasting gives it the full message, so it counts real words and can tell a .1 from a .2. A CSV export carries only Microsoft’s ~255-character preview, so any substantive email hits that cap, its true length is unknown, and unknown defaults to .2. Unless your IT team adds a word-count column, the CSV route rounds nearly everything up.
Every figure here is inferred from the length and shape of an email. It is a starting point for your judgement, not a record of time you spent, and no tool can make it one.
You remain professionally responsible for every entry you submit. The obligation to bill only time actually expended - and to satisfy yourself that each increment reflects work you genuinely did - stays with you.
Where an estimate is too low, raise it. Where it is too high, cut it. Where you cannot recall the work, do not bill it.
This generator is a tool, not a substitute for the thinking. Your job is to know what work you actually did - strategically, substantively. My job is to help you say it in a way that doesn't get cut.
The ATVR framework does the heavy lifting, but you bring the raw material. The better the blurb you give it, the better the narrative comes back. Garbage in, polished garbage out.
Everything that turns a description of work into billing narratives lives here. The row of buttons at the top picks which shape your work is in - that is the only thing that changes between them.
One Task - your default. One task, one entry. Paste the messy blurb you'd type into your timekeeper, hit generate, get the polished version. 20-25 words, full ATVR.
Multiple Narratives - up to 20 structured rows in a single batch, output grouped by matter.
Quick Capture - real-time capture as you go. Jot down date, time, client, and what you did; the generator returns polished narratives grouped by date and matter.
Billing Bookends - capture the whole work cycle. The strategic prep before. The event itself. The substantive follow-up after. This is how you stop leaving 30-40% of your billable hours on the table - the prep and follow-up rarely get billed because they don't feel like "the thing." But they ARE the thing.
Break It Up - anti-block-billing. Take a big project (MSJ, purchase agreement, trial prep) and unbundle it into four phase narratives: Review/Analyze, Outlining/Strategy, Preparation/Drafting, Finalizing/Review. Each one stands alone. Each one gets paid.
Catch what bill review will flag, before it gets there. Two modes behind one tab, and the switch at the top picks which:
A client's pro forma - partner-level review before the invoice goes out. Upload one client's pro forma PDF and every entry gets checked against that client's guidelines from your Vault: block billing, vague narratives, ATVR weaknesses, missing bookends, code mismatches, typos. Structured report with a suggested rewrite for each finding.
My own month - the timekeeper's version. Export your full monthly time report and upload it: every entry, every matter you billed. Same findings, plus duplicate detection and repeated-narrative cleanup across the month. Matters process in parallel, so 400 entries take about as long as 50.
Same review either way. What changes is whose time it is and who is doing the checking.
For billing that has already come back cut. Paste the reduction table off the carrier's portal, pick the guidelines that governed the bill, and every reduced line gets sorted into one of three piles: ready to resubmit (with a compliant rewrite built only from what your original entry already showed), needs your input (a specific question and a fill-in-the-blank template, because a rewrite without the facts would be invention), or not a narrative fix (write off or appeal - and it tells you which).
The other tabs prevent write-downs. This one recovers them. It will also tell you plainly when not to resubmit - a polished rewrite of a reduction that was substantively correct just gets re-cut and costs you standing with that carrier.
The .1s and .2s that disappear into a busy inbox. Export a day or a week of sent mail, drop the file in, and map each recipient domain to a matter once - it is remembered thereafter. Every entry comes back as a reviewable draft, and anything the subject line and preview will not support comes back flagged for you to fill in rather than invented.
Save carrier and client guidelines once, apply them with a click thereafter. Your saved data stays on your device - never on my server. Export to back up or move to another device.
Your Group Billing Training Portal, embedded right here. If your firm is enrolled, your license key carries you straight in - no second login. It sits in the header because it is somewhere you go to learn, not a step in billing a task.
The gold button in the bottom-right corner of every tab opens a coaching chat with me - in my voice, drawing from my full body of frameworks. Use it for anything around billing that the generator tabs don't cover:
The coach remembers your last 2-3 questions in the same session for follow-ups, but forgets when you close the panel. Nothing is stored on a server.
ACTION (the verbs) + TASK (the named work product) + VALUE (why it matters) + RESULT (where it's headed). Every solid billing entry has all four. Most attorneys nail Action and Task. Where they lose money - every single day - is in Value and Result.
Short version: Your inputs go to Anthropic's API for generation, then come back. Anthropic does not train on API inputs, and holds them for up to 30 days for abuse monitoring before automatic deletion. Nothing about your inputs or outputs is stored on this tool's server. Your saved guidelines never leave your device. For firm IT and GC review, read on.
When you click Generate (or send a question to Ask The Billing Coach), your input travels: your browser → this tool's backend → Anthropic's API → back through this tool's backend → your browser. The narrative or coaching response is then displayed. The connection is HTTPS-encrypted end-to-end at every hop.
Anthropic does not train on inputs from API requests. That protection applies regardless of the retention period, so your entries never enter any AI training dataset. This is materially different from free consumer AI tools (ChatGPT free tier, Gemini, etc.).
Retention: 30 days, then automatic deletion. The Billing Generator runs on Anthropic's commercial API under its standard 30-day retention policy. Inputs and outputs are retained for up to 30 days for abuse monitoring, then automatically deleted. Data is encrypted in transit and at rest throughout. Anthropic reserves Zero Data Retention (ZDR) agreements for enterprise accounts meeting specific volume thresholds, so ZDR is not part of this tool's configuration - I'd rather state that plainly than have your GC discover it later. If your firm requires a retention posture beyond the 30-day commercial standard, contact me and I'll walk your IT or InfoSec team through the specifics.
For firm-level review, see Anthropic's Commercial Terms of Service and Trust Center. Anthropic is US-based and SOC 2 Type II certified.
The backend exists for one reason: to add the Anthropic API key and forward your request. It does not log inputs or outputs, does not store conversations, does not have a database of user activity, and does not use your data for any purpose other than completing the round-trip to Anthropic.
Every other tab receives fragments: one narrative, or a pro forma your firm chose to upload. Audit Response receives a carrier's completed bill review - every line, every rate, every reduction, and the carrier's own review commentary. That is a materially more sensitive document than anything else this app handles, in three distinct ways: it is client work product across an entire engagement rather than a slice; it contains the carrier's proprietary review commentary, which some outside counsel guidelines restrict from disclosure to third parties; and the rate data in it is commercially sensitive to your firm itself.
What that means in practice: only the billing lines and the guidelines you select are transmitted - nothing else from the app, and your Vault stays on your device as always. If you upload the carrier's audit PDF, the file is parsed in your browser by PDF.js exactly as the Pre-Checks do it: the PDF binary never reaches any server, and only the extracted text is sent. The same handling described above applies to what is sent. If your firm's outside counsel guidelines restrict sharing a carrier's review commentary with third parties, review that before you paste, and remove anything you would rather not transmit.
The generator works equally well with generic descriptions as with specific ones. To keep client information out of any third-party AI service - this tool, ChatGPT, Claude.ai, Copilot, or any other - describe matters generically.
Generic descriptions still produce strong ATVR narratives because the framework operates on the type of work, not the identities involved. You can add specifics back when you copy the narrative into your billing software.
If your firm requires a formal review before approving this tool for use, request the Security Overview one-pager from info@thebillingcoach.com. It covers data flow architecture, third-party processor disclosures, encryption, retention, and recommended firm-side controls in a single page suitable for circulation to GC and IT.
Hit Generate again - most of the time it's just a hiccup. If it fails a second time, the generator hands you a Copy prompt to clipboard button right there in the error message: click it, open Claude.ai in a new tab, and paste. The exact same prompt will run there.
This tool exists because billing is psychology, not paperwork. The skills are real. The mindset is everything. thebillingcoach.com