Most agencies and consultancies live across three billing models at once: a retainer for baseline capacity, project work at a fixed price, and time-and-materials overflow. The math works. The problem is the invoice—and the ledger underneath it. Send all three on one invoice and you save a delivery step. You also create GL reconciliation hell, confuse tax treatment, and leave auditors genuinely unsure whether to classify the charge as service revenue or materials. Send three separate invoices and you're accurate but drowning in paperwork. The decision isn't ideological. It's about cash flow clarity, tax jurisdiction rules, and how your accounting software actually posts to the general ledger. Here's how to choose—and what to do when you get it wrong. The three billing types and why they matter separately Retainer (monthly, recurring): Fixed fee for availability. Revenue recognition happens on day one of the period. GL posts to service revenue in the current month. Tax treatment is straightforward—it's labor income, no materials. Clients expect it predictable. Project work (fixed price, milestones): Deliverable-based. Revenue recognition tied to completion or acceptance. GL might post to project revenue (a separate account) or cost of goods sold if you're tracking project costs separately. Tax treatment can flip if materials or subcontractors are involved. Invoicing happens at milestone close, not on a cadence. Hourly overage or T&M (variable, time-tracked): Charged weekly or monthly as hours accumulate. Revenue recognized as hours are logged (or as invoices are issued, depending on your policy). GL posts to time-and-materials revenue, a separate account from retainer. Tax exposure rises if rates vary by role or if hours touch contractor labor. The moment you put all three on one invoice, your accounting software has to guess which GL account to post to. Most default to the first line item type they encounter. That's how ₹50K invoices end up half-coded to service revenue and half-coded to materials, and your monthly reconciliation takes three days longer than it should. Decision tree: split, prorate, or combine Split to separate invoices if: Tax rates differ. Retainer is subject to one GST rate, project materials trigger a different rate, or hourly work includes a contractor withholding. Separate invoices make tax liability clear and auditable. One mixed invoice forces you to file a tax allocation memo—which regulators love to question. Revenue recognition timing is different. Retainer is recognized on the first day of the month. Project work is recognized on delivery. Hourly is recognized weekly as hours are logged. If your invoicing cadence doesn't match your recognition cadence, you're creating reconciliation debt. Split invoices, invoice on their actual due dates. Payment terms differ. Retainer is due net 30 from the first. Project has a 50% deposit on signing, 50% on delivery. Hourly is due on receipt. Three different payment terms on one invoice confuse clients and create accounting noise. Three invoices make terms clear. Your GL chart of accounts separates revenue types. If your finance team maintains service revenue, project revenue, and time-and-materials revenue as distinct accounts (which most do, for forecasting), one mixed invoice forces an allocation decision every time you post it. Separate invoices eliminate the decision entirely. The client needs separate GL coding for budget tracking. Many enterprise clients bill these three types to different internal cost centers or projects. They'll ask for separate invoices so they can code them distinctly. Honor this. It costs you one extra invoice line. Combine on one invoice (with line-item detail) if: All three are subject to the same tax rate. GST, VAT, or sales tax is uniform across retainer, project, and time. Tax liability is unambiguous. You can itemize the three types with confidence. Revenue recognition timing is the same. Retainer, project, and hourly all invoice on the first of the month, and your revenue policy recognizes them all in the current month. No staggered recognition, no reconciliation debt. Payment terms are identical. Everything is net 30 from invoice date. No deposits, no milestones, no special terms. One due date, one payment, one GL posting. Your GL chart combines these under one service-revenue account. Some smaller firms don't maintain separate revenue accounts for different billing types. If you post everything to revenue and subdivide only by project or client, one invoice is simpler and equally auditable. The client prefers a single invoice. Fewer documents to file, one approval workflow, less admin noise. If tax and timing align, grant this. The rule: If you have to write a memo to explain which GL account to post each line item to, send separate invoices. If the allocation is mechanical and unambiguous, combine them. Proration: when it helps, when it breaks Proration is the math of splitting a charge across calendar bo