Real profitability when you bill in USD and pay in INR

Indian agencies billing foreign clients often measure revenue, not margin. Here's how to calculate real profitability when team costs are in INR and revenue is in USD.

Team tickbit
27 April 2026· 9 min read

You close the year with ₹4 crore in invoiced revenue from US and European clients. Your accountant says you had a great year. Your bank balance says otherwise. You feel like you're running hard and not gaining ground, and you can't quite explain why.

If that sounds familiar, you aren't alone. You're also probably not measuring profitability. You're measuring revenue.

The two are not the same, and the gap between them is where most Indian agencies billing foreign clients quietly lose money. Your team's cost is in rupees. Your invoices are in dollars, euros, or pounds. Standard profitability thinking, borrowed from US or European playbooks, doesn't translate cleanly.

This post is a framework for fixing that. It covers:

  • Why the INR-cost / foreign-revenue gap breaks normal profitability math

  • The five numbers every Indian agency should know per client

  • A worked example calculating real margin on a US client engagement

  • Three common mistakes that erode margin without anyone noticing

  • How to track this continuously, not once a year at tax time

This is a framework post, not a product post. There's a tool mentioned near the end. The thinking is what matters.

The core problem — revenue is not profit

Most Indian agencies measure three things: invoices sent, invoices paid, and bank balance growth. These are revenue metrics. They tell you nothing about whether a specific client, project, or service line is actually making money.

Profitability is different. Profitability is revenue minus fully-loaded team cost, expressed in the same currency. For an agency billing in USD with team cost in INR, that requires three steps most teams skip:

  1. Calculate the fully-loaded INR cost per employee per hour. Not just salary. Include taxes, benefits, allocated overhead, software, and non-billable time.

  2. Track the exact hours each employee spent on each client's work.

  3. Convert the foreign-currency invoice to INR at the rate when the money actually hit your account, not the rate on the day you sent the invoice.

Then subtract. The answer, in INR, is your real margin per client.

Most agencies don't do this because it requires infrastructure they haven't built. They default to instinct: "that client feels profitable, that one doesn't." Instinct is often wrong, especially on long-running retainers where scope creep silently erodes margin over months without anyone seeing it on a dashboard.

The five numbers every Indian agency should know per client

1. Loaded hourly cost per team member (INR)

Not their salary divided by 160. Fully loaded cost includes gross salary, PF and ESI contributions, health insurance and benefits, a share of office rent and utilities, software licences, equipment depreciation, and non-billable time spent in meetings, admin, training, and bench time between projects.

Rule of thumb: loaded monthly cost is 1.5x to 2.0x gross salary, depending on overhead intensity. Divide by actually-billable hours per month (usually closer to 130 than 160) to get the per-hour loaded rate.

For a developer earning ₹80,000/month gross: loaded monthly cost is roughly ₹1,20,000 to ₹1,60,000. Divided by 130 billable hours, that's ₹920 to ₹1,230 per billable hour. Round to ₹1,200/hour for planning and you're in a defensible range.

2. Hours spent per client per billing period

Tracked per employee, per client, per project. Most agencies track hours at the project level. That's not enough. If a senior developer splits time across four clients in a month, you need hours attributed to each one individually. Otherwise cost allocation is a guess.

3. INR cost per client per billing period

Sum of (hours × loaded rate) for every person who touched that client's work in the period. This is what the client actually costs the business, in rupees, before any revenue is counted.

4. Realized INR revenue per client per billing period

The invoice amount converted to INR at the exchange rate on the day the payment cleared. Not the day the invoice was sent. Payments often clear days or weeks later, the FX rate moves, and the gap between "invoiced" and "realized" is usually where 2–4% of margin goes missing.

5. Real margin per client

(Realized INR revenue − INR cost) / Realized INR revenue × 100.

This is the number that tells you whether a client is worth keeping. Nothing else does.

If you can't easily pull these five numbers for every active client right now, you're measuring revenue, not profitability. You aren't alone — most Indian agencies can't. But it's fixable.

A worked example — is this client profitable?

Hypothetical scenario. A US client, 3-month engagement, $15,000 total, billed $5,000 per month.

Team on the engagement:

  • Senior developer at ₹1,800/hour loaded

  • Mid-level developer at ₹1,200/hour loaded

  • Designer (part-time) at ₹900/hour loaded

Hours over three months:

  • Senior developer: 160 hours

  • Mid-level developer: 180 hours

  • Designer: 40 hours

Payments received:

  • Month 1: $5,000 at ₹83/USD

  • Month 2: $5,000 at ₹84.5/USD

  • Month 3: $5,000 at ₹84/USD

Step 1 — Total INR cost

  • Senior developer: 160 × ₹1,800 = ₹2,88,000

  • Mid-level developer: 180 × ₹1,200 = ₹2,16,000

  • Designer: 40 × ₹900 = ₹36,000

  • Total cost: ₹5,40,000

Step 2 — Realized INR revenue

  • Month 1: $5,000 × ₹83 = ₹4,15,000

  • Month 2: $5,000 × ₹84.5 = ₹4,22,500

  • Month 3: $5,000 × ₹84 = ₹4,20,000

  • Total revenue: ₹12,57,500

Step 3 — Margin

  • Profit: ₹12,57,500 − ₹5,40,000 = ₹7,17,500

  • Margin: ₹7,17,500 / ₹12,57,500 = 57%

On paper this looked like a $15,000 project. In reality it was a ₹7.17 lakh margin at 57%. Healthy.

Now rerun it with one change. The senior developer spends 240 hours instead of 160. Scope creep of 50%, which anyone who has run an agency knows is not unusual.

  • New senior developer cost: 240 × ₹1,800 = ₹4,32,000 (₹1,44,000 more)

  • New total cost: ₹6,84,000

  • New margin: ₹12,57,500 − ₹6,84,000 = ₹5,73,500

  • New margin %: 45.6%

Still profitable. But the team worked 80 extra hours for ₹1,44,000 less in margin. If you were watching the invoice total, the project looks identical. If you were watching the hour count against the original estimate, you'd have caught it in week three and had a scope conversation.

That's the kind of quiet erosion most agencies never see.

The three mistakes that quietly kill agency margin

Using salary instead of loaded cost

This is the most common error, and it's the one that hides the worst damage. Salary ÷ 160 understates true hourly cost by 50–100%. An agency using ₹80,000/month ÷ 160 = ₹500/hour as their internal rate thinks they're running 70% margin on engagements that are really running closer to 30%.

When the year ends and the cash isn't there, nobody knows why. The math was always wrong. It just looked right on a spreadsheet.

Pricing at contract-signing rate, not realized rate

A three-month contract signed at ₹85/USD that pays out at ₹82 has already lost 3.5% of revenue before any work started. Over a full year, FX movement alone can swing agency margin by 5–8%.

Almost no Indian agency reconciles realized FX against contracted FX. It sits silently in the gap between "we're owed $5,000" and "₹4,10,000 landed in the account." Over enough clients, it adds up to a single mid-level salary.

Not tracking scope creep against the original estimate

The contract says "build this site in 120 hours." The team delivers in 180. The agency invoices the original quote, the client is happy, and the project closes. On paper it's done and paid.

In reality, the agency absorbed 60 extra hours of team cost at full loaded rate. At ₹1,500/hour loaded, that's ₹90,000 in silent margin loss on a single engagement. Unless someone is tracking hours against the original estimate in real time, the damage never surfaces and the same pattern repeats on the next contract.

How to actually track this, week by week

Three approaches, in order of sophistication.

Spreadsheet approach. A monthly workbook where you log per-client hours, team members, loaded rates, invoiced USD amount, and realized INR at payment. Calculate margin manually. Low-cost, high-discipline. Most agencies try this and abandon it within two or three months because the data entry overhead beats the insight payoff.

Time tracker plus manual reconciliation. Use Clockify, Toggl, or Harvest for hours, export monthly, compute cost and margin in a spreadsheet. Cleaner data than approach one, same fundamental problem at scale. Works for a five-person team. Falls apart at fifteen.

Integrated platform. A tool that tracks hours, attributes them to clients at per-person loaded rates, handles multi-currency invoicing, and shows live margin per client without manual reconciliation. tickbit was built to do exactly this for Indian agencies billing foreign clients — hours in INR cost, invoices in USD/EUR/GBP/AED, live margins per client. See tickbit.in if interested.

Whichever approach you pick, pick one. The worst option is the one most agencies currently use, which is no system at all and an end-of-year check-in with the accountant.

The mindset shift

The shift isn't "track more numbers." The shift is stop equating invoiced revenue with business health.

Agencies that measure revenue grow busy. Agencies that measure margin grow profitable. The difference shows up eighteen months later, when the revenue-focused agency has more clients, more stress, and roughly the same bank balance as the previous year — while the margin-focused agency has fewer clients, less stress, and actual reserves.

Your best clients are not your biggest invoicers. Your best clients are your highest-margin ones. The first step in finding out which is which is knowing how to calculate it.

Go do the math for your top five clients this week. Use a spreadsheet, a tool, or a notebook. It doesn't matter which. Just do it. What you find will probably surprise you.


tickbit handles this math automatically for Indian agencies billing foreign clients. Free to start at tickbit.in.

Written by Team tickbit

Tickbit is a time-tracking and invoicing platform for teams billing globally. Follow along for practical insights on profitability, project management, and running a services business.

Try Tickbit free

14-day Pro trial, no credit card required. Every bit counts.

Start Free