Gross bookings are not revenue: building a travel agency P&L
Gross bookings and revenue are not the same number. A worked travel agency profit and loss statement, two examples, and three ratios to track.
Jökulsárlón · 21:30Every travel agency owner has stared at a bank statement showing ₹18 lakh in this quarter's credits and felt rich, right up until the CA asks what the actual travel agency profit and loss statement says. Most of that ₹18 lakh was never yours. It was an airline's fare, a hotel's room rate, or an embassy's visa fee passing through your account on its way to someone else.
Gross bookings, the total transaction value collected from clients, is not revenue. What you actually earn depends on whether you sold as a principal, taking the trip on as your own product, or as a pure agent, booking someone else's service for a fee. Confuse the two and your P&L either looks impossibly profitable when a bank is deciding on a loan, or falsely unprofitable when you are deciding whether to keep a ticketing desk open.
This post builds the actual statement: the line items from gross bookings down to net profit, two worked examples at the same gross bookings figure that land in very different places, three ratios to run every quarter, and a 30-minute method to pull all of it out of the booking sheet you already keep.
Line one: gross bookings, and why it's the wrong top line
Gross bookings (also called gross booking value or GBV) is the total amount your clients paid you across every product: packages, air tickets, visa fees, forex, insurance. It is the number that shows up in your bank statement and the number most owners quote when someone asks "how big is your agency."
It is also the number that misleads a lender, an investor, or a new partner most badly. An agency doing ₹3 crore a year in gross bookings that is mostly ticketing and visa work can be a genuinely small business, one or two people earning a service fee on other people's fares. An agency doing the same ₹3 crore in outbound packages, buying the land arrangement and reselling it as its own product, is a materially bigger operation carrying real supplier risk. Same top line, two different businesses. The fork that separates them decides everything below gross bookings on the statement.
Principal model vs agent model: the fork that decides your real revenue
When you take supplier risk and repackage a trip as your own product, the fuller booking value gets recognised as revenue, with the cost of running the trip sitting below it as a direct cost. When you are only booking or passing through someone else's service for a fee, only that fee, markup or commission is revenue. The full ticket, hotel or visa amount is not yours; it was always the supplier's.
Principal model: You buy hotel rooms, transport and local services at net rates, bundle them into a package, and sell it at your own price. The client is buying your trip, not the hotel's room or the transporter's van individually. Because you carry the risk (unsold rooms, cancellation penalties, a supplier price hike you have to absorb), accounting treats the full package price as revenue, with the cost of building the trip as a direct cost against it. This is the model behind most outbound and domestic fixed-departure and custom packages.
Agent model: You book a flight, a visa, a forex card or a stand-alone hotel room for a client, and your reward is a commission, a service fee, or the spread between what the supplier charged and what you billed. The fare, the visa fee, the forex rate: none of that is yours. It moves through your account, but it was always the supplier's money. Only your fee is revenue.
Most agencies run both models at once, often on the same booking (a package with a flight added, a visa arranged alongside a Bali itinerary). The mistake is treating every rupee that lands in the account the same way regardless of which model produced it.
GST treatment follows the same fork, and it moved recently enough to matter. India's GST rates were rationalised in September 2025 ("GST 2.0"), consolidating most goods and services into two primary slabs with a separate higher slab retained for a short list of items (Wikipedia summary of the GST 2.0 rationalisation). Whether the older concessional treatment for tour operator packages, and the separate valuation convention for air-ticket booking commission, survived that change unchanged is not something this post can confirm against a live notification. Confirm the current GST treatment for both your package revenue and your agent-fee revenue with your CA, as of August 2026, before you finalise how either line is taxed.
The same principal-versus-agent logic also decides how you should be reading published margin benchmarks: a benchmark quoted as "margin on gross bookings" means something completely different for a packages-heavy agency than for a ticketing-and-visa desk, and comparing your number against it without adjusting for the model is comparing two different things.
Direct costs: what actually sits below the revenue line
Direct costs are the costs tied to a specific booking, the ones that would not exist if that booking did not happen. They sit directly below revenue and produce your gross profit, and they are not the same as fixed costs (rent, salaries, subscriptions), which don't move with booking volume.
For a principal-model package booking, direct costs typically include: net hotel or land cost paid to the DMC or supplier, local transport, driver bata and fuel, guide or escort fee, permits and entry coordination, insurance if bundled into the package, and refunds or cancellation costs absorbed rather than passed on.
For an agent-model booking, direct costs are smaller but real: forex margin cost if you're buying currency at one rate and passing it on at another, portal or OTA commission paid away on a booking sourced but fulfilled through a third party, and the payment gateway fee. Visa fees you recover from the client at cost, following the pure-agent rule, carry no cost or revenue of their own if billed correctly.
Keep this list on its own rows, separate from fixed costs. Mixing a driver's bata into the same bucket as office rent is how a costing sheet stops telling you anything useful.
Two worked P&Ls at the same gross bookings
The clearest way to see why the model matters is to hold gross bookings constant and watch revenue and profit diverge. The numbers below are illustrative, rounded for readability, and not sourced industry figures. They exist to show the mechanism, not to benchmark your agency against.
Example: Two agencies, same quarter, same ₹50,00,000 in gross bookings.
Operator A runs outbound fixed-departure packages, buying land arrangements at net rate and selling its own itinerary. It took supplier risk on every seat it sold, so the full package value is its revenue.
Operator B runs a ticketing and visa-heavy desk: mostly flight bookings, visa facilitation and forex, with a handful of hotel-only bookings. Almost everything it collects is someone else's fare or fee passing through; only its service charge and commission are its own.
| Line | Operator A (principal, packages) | Operator B (agent, ticketing/visa) |
|---|---|---|
| Gross bookings | ₹50,00,000 | ₹50,00,000 |
| Revenue | ₹50,00,000 | ₹4,50,000 |
| Direct cost | ₹36,00,000 | ₹90,000 |
| Gross profit | ₹14,00,000 | ₹3,60,000 |
| Gross margin (on revenue) | 28% | 80% |
Operator A's revenue equals its gross bookings because it sold as a principal on every line. Its gross margin looks modest at 28%, but 28% of ₹50,00,000 is a large absolute number.
Operator B's revenue is a fraction of its gross bookings, because most of that ₹50,00,000 was airline and embassy money passing through. Its gross margin percentage looks excellent at 80%, but 80% of a much smaller revenue base is a much smaller rupee number. Read either margin percentage without knowing the model behind it and you'd draw the wrong conclusion about which business is actually bigger.
Careful: A common trap is comparing gross margin percentages across product lines without normalising for the model first. An 80% margin on a ticketing desk and a 28% margin on a packages desk are not telling you the ticketing desk is "better." They're measuring against completely different revenue bases.
The fixed costs owners forget to charge the business
Fixed costs are the ones that exist whether or not a single booking closes this month: salaries, rent, subscriptions, and the ones owners routinely leave off the sheet entirely. Leaving them off doesn't make them disappear. It just means the P&L is lying to you about whether the agency is actually profitable.
The ones most often missing:
- Your own salary or drawings. If you're not paying yourself formally, the business still consumed your time and should carry that cost on paper, even if it's not moving through payroll.
- Staff salary through a lean quarter. Off-season months with few bookings still carry the same fixed salary bill. That cost belongs to the quarter it was incurred in, not smeared invisibly across a good quarter later.
- WhatsApp Business API and portal subscription fees. Small individually, real in aggregate across a year.
- GST paid without matching input tax credit. Many operators invoice under the long-standing option that trades a lower GST rate for giving up ITC, a trade convention rather than the only path (confirm with your CA which option you're actually on). Where that applies, the GST you pay on your own inputs is a real cash cost with nothing to offset it. It belongs on the P&L, not buried in "miscellaneous."
- Bad debt from cancellations you absorbed. A refund you gave a client that your supplier didn't give back to you is a real loss for that quarter, not a rounding error.
Skip these and a genuinely loss-making agency can read as profitable on paper, right up until a lean quarter or a bad debt exposes the gap between what the spreadsheet said and what the bank account actually shows.
Three ratios to compute every quarter
Once revenue, direct cost and fixed cost are separated, three ratios tell you most of what you need to decide whether the business, and each product line inside it, is worth running.
| Ratio | Formula | A bad reading means |
|---|---|---|
| Gross margin % | Gross profit ÷ Revenue × 100 | Your booking-level pricing or costing is off; you're not charging enough above direct cost, or costs are creeping without a matching price change |
| Net margin % | (Gross profit − Fixed cost) ÷ Revenue × 100 | Overheads are outrunning what the booking volume can support; either grow revenue or cut fixed cost, don't ignore it |
| Contribution per product line | Revenue − Direct cost, tracked separately for each product (packages, ticketing, visa, forex) | A specific line is carrying its own weight or not; a ticketing desk with near-zero contribution after fixed-cost allocation may be worth dropping even if it looks busy |
The third ratio is the one most agencies never compute, because it needs every booking tagged by product line first, which is exactly what the 30-minute build below sets up. It's also the one that answers the sharpest question an owner actually has: which desk to keep staffing, and which one is busy without being profitable. It's the same question behind whether going direct against an OTA, covered in the real math of OTA dependence, actually improves your numbers or just moves the same thin margin around.
Build this in 30 minutes from your booking sheet, no software
You don't need accounting software to build this the first time. You need five extra columns on the booking register you already keep in Excel or Google Sheets, and about half an hour.
-
Add a "Model" column. Mark every booking row Principal or Agent. A package you built and priced is Principal; a flight, visa, forex or hotel-only booking passing on a supplier's price plus a fee is Agent.
-
Add a "Pass-through" column. For Agent rows, enter the supplier's face value: airline fare, visa fee, net hotel rate you didn't mark up. For Principal rows, leave it at zero.
-
Add a "Revenue" column. Formula: gross amount collected minus Pass-through. Principal rows equal the full gross amount; Agent rows collapse to just your fee or commission.
-
Add a "Direct cost" column. Enter the booking-specific costs from the list above, tied to that one row, not a lump-sum estimate.
-
Add a "Product line" column. Package, Flight, Visa, Forex, Insurance, whatever categories match how you sell. This makes the contribution-per-line ratio possible later.
-
Sum Revenue and Direct cost by month. A SUM or pivot on the two columns gives you Gross profit for the period.
-
List fixed costs for the same period separately. Owner drawings, staff salary, rent, subscriptions, GST without ITC, bad debt absorbed. Total it once.
-
Compute Net profit. Total Gross profit minus total Fixed cost for the period. That's your real bottom line, not the number in your bank statement.
-
Pivot Revenue and Direct cost by Product line. This gives you the contribution-per-line figure from the ratio table above, without touching a single formula beyond a pivot table.
Common questions
What should a travel agency profit and loss statement sample look like
At minimum: gross bookings at the top, an adjustment down to recognised revenue (splitting out pass-through amounts on agent-model bookings), direct costs, gross profit, fixed overheads, and net profit at the bottom. The structure and worked examples above are that sample, built with illustrative numbers you can replace with your own.
What is a good travel agency profit margin in India
There's no single answer that applies across models. The worked example above showed a principal-model packages business landing at 28% gross margin on revenue against a ticketing-and-visa agent-model desk landing at 80% on a much smaller revenue base, illustrative numbers, not a benchmark. Read any margin figure against the model that produced it before comparing it to someone else's. Tour operator margin benchmarks covers real-world ranges by product type.
Is owning a travel agency profitable
It depends heavily on the mix between principal-model and agent-model bookings, and on whether the owner is charging the business for their own time. Two agencies with the same gross bookings can be one comfortably profitable and one quietly loss-making, purely based on which model dominates and whether owner drawings are actually on the sheet. How much travel agency owners really earn works through take-home numbers.
What's the difference between gross booking value and revenue
Gross booking value is the total amount collected from clients across every product, including money that belongs to suppliers like airlines, hotels and embassies. Revenue is only the portion you actually earned: the full package price where you sold as a principal, or just your fee, markup or commission where you booked a supplier's service as a pure agent. The gap between the two can be small or enormous depending on your booking mix, which is why gross bookings alone tells a lender very little about the business.
The short version
- Gross bookings (total money collected, including supplier pass-through) is not revenue. Building a P&L on gross bookings alone misreads the business in both directions.
- Principal-model bookings (packages you build and take supplier risk on) recognise the full booking value as revenue. Agent-model bookings (flights, visa, forex, hotel-only) recognise only your fee or commission.
- Direct costs sit below revenue and move with bookings: net land cost, transport, guide fees, visa costs, gateway fees. Fixed costs (salaries, rent, subscriptions, owner drawings) sit below that and don't move with volume.
- Two agencies with identical gross bookings can show wildly different revenue and gross margin once you separate the models; comparing raw margin percentages across product lines without adjusting for this is misleading.
- Track three ratios every quarter: gross margin %, net margin %, and contribution per product line, the last of which tells you which desk to keep staffing.
- You can build this statement in about 30 minutes by adding five columns (Model, Pass-through, Revenue, Direct cost, Product line) to the booking sheet you already keep, no new software required.
- GST and TCS treatment differ by model and moved with the September 2025 GST rationalisation; confirm the current applicable rates for your specific booking types with your CA before you finalise how any line is taxed.