Your first 20 orders are sitting in your Shopify dashboard and you need to get them to customers without eating your margin. Every comparison you've read so far was written by one of the shipping companies themselves, so every one of them wins its own comparison. This one is written by an operator who has spent years moving physical goods across India, first as Distribution Head at Eureka Forbes, then running supply chain at Atomberg.
Here's the truth the rate cards hide: the headline per-500g rate is maybe 40% of what shipping actually costs you. The rest is COD charges, GST on freight, weight discrepancy deductions, RTO charges on failed deliveries, and the cash-flow cost of waiting 8 days for your COD money. A platform that looks ₹4 cheaper per shipment can cost you ₹15 more per order once all of that lands.
This guide compares Shiprocket, NimbusPost and shipping direct with Delhivery on the numbers that decide your P&L: verified current rates, COD remittance cycles, weight dispute handling, RTO charges, NDR workflows, pickup reliability and Shopify integration. Then it gives you a straight recommendation by daily order volume.
At 0 to 5 orders a day, use an aggregator on a free plan: Shiprocket Lite (₹26/500g start) or NimbusPost (₹25.50/500g start, free T+3 COD remittance). NimbusPost's faster free remittance makes it the better default for COD-heavy stores. At 5 to 30 orders a day, move to a paid aggregator tier (Shiprocket Advanced ₹499/month at ₹23/500g, or NimbusPost Elevate at ₹24/500g) and negotiate. At 30+ orders a day, open a direct Delhivery account alongside your aggregator: you'll get negotiated rates, D+2 COD remittance, and a fallback when one network has a bad week. Never choose on the headline rate alone. COD charges (₹36 or 1.5 to 2.5% on Shiprocket), GST, weight disputes and RTO decide the real cost.
Aggregator or direct courier: what you're actually choosing
An aggregator (Shiprocket, NimbusPost) is a software layer that sits between you and 20+ courier companies. You get one dashboard, one wallet, one pickup request, and the aggregator's pre-negotiated rates across Delhivery, Bluedart, Xpressbees, Ekart and the rest. Going direct means opening an account with one courier, usually Delhivery, and shipping everything on their network at rates tied to your volume.
The trade is simple. Aggregators give small sellers rates they could never negotiate alone, plus courier choice per shipment. The cost is a middle layer: slower COD remittance (your cash passes through their wallet), an extra party in every weight dispute, and margins built into your rate. Direct accounts give you faster money and one throat to choke when things go wrong, but you need volume before the rates make sense and you're stuck with one network's coverage gaps.
One naming correction before we compare, because it confuses a lot of founders: "Delhivery Direct" is technically Delhivery's hyperlocal same-city parcel product. What sellers mean when they say it, and what this guide compares, is shipping direct on Delhivery's network through a Delhivery One business account instead of reaching Delhivery through an aggregator. Same network either way. The question is who holds your contract and your cash.
Shipping rates compared: per 500g, verified July 2026
These are the published starting rates. "Starting" means the cheapest courier, lightest slab, nearest zone. Treat them as the floor, not your average.
| Platform · Plan | Monthly fee | Rate per 500g (from) | Built for |
|---|---|---|---|
| Shiprocket Lite | ₹0 | ₹26 | Up to ~5 orders/month tier |
| Shiprocket Business | ₹199 | ₹25 | Early volume |
| Shiprocket Advanced | ₹499 | ₹23 | 50 to 200 orders/month |
| Shiprocket Pro | ₹799 | ₹20 | High volume |
| NimbusPost Essential | ₹0 platform fee | ₹25.50 | Up to 300 orders/month |
| NimbusPost Elevate | ₹0 platform fee | ₹24 | 300 to 1,000 orders/month |
| NimbusPost Elite | ₹0 platform fee | ₹19 | 1,000+ orders/month |
| Delhivery direct (Delhivery One) | ₹0, pay per shipment | Volume-based, quote via rate calculator | Any volume, best value at 30+/day |
Sources: Shiprocket's pricing page and NimbusPost's pricing page, checked July 2026. Delhivery doesn't publish a flat card for direct accounts; rates depend on your lane mix and volume, and you get them from the Delhivery rate calculator or their sales team. Independent trackers put Delhivery's effective national rates around ₹50 to ₹120 per kg depending on zone and contract, per ClickPost's 2026 rate guide.
Zones change everything
Every platform prices by zone: A (within city), B (within state or region), C (metro to metro), D (rest of India), E (Northeast, J&K, remote pincodes). The starting rates above are Zone A. Independent analysis of Shiprocket's card shows Zone E running 50% to 180% above Zone A, per CheckThat's Shiprocket pricing breakdown. So a ₹26 shipment within Delhi can be a ₹60+ shipment to Guwahati. Before you pick anything, run your top 5 customer pincodes through each platform's calculator with your real box dimensions. Your rate is your lane mix, not the brochure number.
What a ₹599 COD order actually costs on each
This is where founders get burned. Here is the full stack of charges on a ₹599 COD order, 0.5 kg dead weight, shipped metro to metro.
Margin Waterfall™: selling price minus COGS, packaging, shipping, payment gateway, RTO loss, then CAC. The shipping line in the waterfall is never the courier's headline rate. It is freight + COD charge + GST + your RTO rate spread across delivered orders. Price that line wrong and every ad rupee you spend scales a loss.
Shiprocket's own worked example makes the point: a ₹26 base freight becomes roughly ₹73 once you add the ₹36 COD charge and 18% GST, per CheckThat's analysis of Shiprocket's published charges. Shiprocket charges COD at a fixed fee or 1.5 to 2.5% of order value, whichever is higher, confirmed on Shiprocket's own support docs. On a ₹599 order the fixed ₹36 wins, so that's what you pay.
| Cost line (₹599 COD, 0.5 kg, Zone C) | Shiprocket Lite | NimbusPost Essential | Delhivery direct |
|---|---|---|---|
| Freight (Zone C estimate) | ~₹35 to 42 | ~₹33 to 40 | ~₹40 to 55 at low volume |
| COD charge | ₹36 (fixed beats 2%) | ~₹27 to 40 by courier | ~₹40 to 50 or ~2% |
| GST 18% on charges | ~₹13 to 14 | ~₹11 to 14 | ~₹14 to 19 |
| Landed shipping cost | ~₹84 to 92 | ~₹71 to 94 | ~₹94 to 124 |
| As % of ₹599 order | ~14 to 15% | ~12 to 16% | ~16 to 21% |
Freight and COD lines are estimates built from each platform's published starting rates and charge structures; exact numbers vary by courier selected and your plan, so run your own pincodes. Two things are not estimates. First, the shape: your real landed cost on a COD order is roughly 3x the headline per-500g rate. Second, the ranking flips with volume: at retail volumes Delhivery direct is usually the most expensive of the three, and at 1,000+ orders a month a negotiated direct contract usually beats both aggregators.
If 14% of order value going to shipping breaks your unit economics, the problem is upstream in your pricing, not in your courier choice. Fix that first with the D2C unit economics guide.
COD remittance cycles: the cash-flow killer nobody checks
In India, 60%+ of your early orders will be COD. That means the courier collects your revenue and holds it. How long they hold it decides if you can pay for your next inventory batch on time. Founders compare rates for a week and never once ask about remittance. Then week six arrives, the supplier wants payment for the reorder, and ₹80,000 of their money is sitting in a shipping wallet.
| Remittance | Shiprocket | NimbusPost | Delhivery direct |
|---|---|---|---|
| Standard cycle (free) | D+8 working days, payouts Mon/Wed/Fri | T+3 | Within 48 hours (D+2) |
| Early option | D+4 at 0.49% · D+3 at 0.69% · D+2 at 0.99% | 1 to 2 days, fee depends on plan | Already D+2 standard |
| Instant option | Up to 70% of COD value next day, fee up to 5% | Not published | Not applicable |
Sources: Shiprocket Early COD, NimbusPost Early COD, and Delhivery One's COD remittance policy, which commits to transferring COD within 48 hours provided your wallet balance is positive.
Do the working-capital math on your own numbers. At 10 COD orders a day averaging ₹599, a D+8 cycle means roughly ₹48,000 of your revenue is permanently in transit. On D+2, that float drops to about ₹12,000. That ₹36,000 difference is a free working-capital loan, and for a bootstrapped brand it is often the difference between reordering stock on time and going out of stock for two weeks. According to the Inventory Confidence Model™, you commit to a reorder only when the cash to fund it has a known arrival date. A D+8 remittance cycle pushes every reorder decision back a week, which at early volumes quietly caps your growth rate.
Running distribution P&Ls taught me that companies rarely die from bad rates. They die from cash arriving late. I've watched sellers celebrate saving ₹3 per shipment while 8 days of COD float quietly forced them to skip a reorder in their best sales month. When I evaluate a shipping partner now, remittance cycle is the second question I ask, right after weight dispute process. Rate is third.
Weight discrepancy disputes: the hidden cost line
Here's how this works. You declare 0.5 kg. Three weeks later the courier claims the parcel measured 1 kg volumetric, and the difference is deducted from your wallet automatically. Volumetric weight is (length × width × height in cm) ÷ 5000, and you're billed on the higher of dead weight and volumetric weight. A light product in a big box is a volumetric product, full stop.
The scale of this is bigger than most founders believe. Couriers raise weight discrepancies on roughly 28% of shipments industry-wide, though after evidence checks fewer than 13% stick to the merchant, per Business Standard's report on weight discrepancy handling. Read that again: on more than a quarter of your shipments, someone will try to charge you extra weight. Whoever handles those disputes for you is protecting or leaking real money every week.
- Shiprocket gives you a 7-working-day window to dispute with product images, resolves disputes in about 5 to 6 working days, and now requires image proof from couriers which it validates before passing charges to you, per its weight dispute management system. Miss the 7-day window and the deduction stands. Put a weekly reminder in your calendar for this. Seriously.
- NimbusPost offers a weight-freeze feature: you register your SKU's dead weight and dimensions upfront, which prevents most discrepancies from being raised at all. Prevention beats dispute, so for standardised catalogs this is genuinely useful.
- Delhivery direct puts you in the dispute directly with the courier, no middle layer. That's faster when you have volume and a named account manager, and slower when you're a small account emailing a support queue.
Whatever you choose: photograph every parcel on a scale with dimensions visible before handover, for at least your first 200 shipments. One photo per shipment has won me more dispute money than any escalation email ever did.
RTO charges: you pay for failed deliveries twice
When a COD customer refuses the parcel or isn't reachable, it comes back to you as RTO (return to origin). You pay the forward freight and an RTO charge for the return leg, which on most couriers runs close to the forward rate. You also get zero revenue and often a squashed box you can't resell as new. Delhivery's own research says brands spend about 1.5x the original shipping cost just handling a return, per industry analysis of RTO charges.
At a 20% RTO rate on COD, which is normal for an unoptimised store, one in five shipments costs you ~₹150+ in pure loss. That single line kills more COD-heavy brands than CAC does. Compare each platform's RTO rate for your couriers in the rate card before onboarding, not after. Reducing the RTO rate itself is its own playbook, covered in full in the guide to reducing RTO on COD orders, so I won't repeat it here.
NDR workflows: where deliveries get saved or lost
NDR (non-delivery report) is what happens when a delivery attempt fails: customer unreachable, address incomplete, customer asked to reschedule. What happens in the next 24 hours decides whether that order delivers or becomes RTO.
Both aggregators run automated NDR flows: the failure hits your dashboard, the buyer gets a call, IVR, or WhatsApp message to confirm or fix the address, and you can push a reattempt. NimbusPost leans harder on pre-dispatch prevention, with automated WhatsApp and IVR order confirmation before the shipment even leaves, which kills the fake-intent COD order early. Shiprocket's NDR panel is mature and gives you buyer-response tracking across couriers. On a direct Delhivery account you get their One dashboard's NDR reattempt controls, which work fine but sit in one network; there's no cross-courier view because there's no cross-courier.
The operator rule: whichever platform you use, work your NDR queue every single morning. An NDR answered within 24 hours delivers far more often than one answered in 72. This is a founder job until you're big enough to hire for it.
Pickup reliability: the thing no rate card shows
A missed pickup means every order from that day breaches your promised dispatch SLA. On aggregators, pickups are done by whichever courier you assigned, so reliability is per courier per pincode, not per platform. In metros, pickups are dependable across all three options. In tier 2/3 towns, this is where a direct Delhivery relationship often wins: one network, one pickup rider who learns your location, and at volume a fixed daily pickup slot written into your agreement.
Test it before you commit. Run 10 shipments through each shortlisted option in week one and track: pickup requested vs actually picked same day, time of pickup, and manifest accuracy. Ten shipments will tell you more than fifty reviews.
Shopify integration quality
All three connect to Shopify, so the question is depth, not existence. Shiprocket's Shopify app is the most battle-tested in India: orders sync automatically, you can push tracking back to Shopify, and their channel integration is stable at volume. NimbusPost syncs Shopify plus WooCommerce and marketplaces on all plans, with custom channel integrations on higher tiers. Delhivery One has its own Shopify app for direct accounts; it does order sync and label generation but you lose the courier-selection layer since everything ships Delhivery.
One practical note: whichever you pick, make sure tracking pushes back into Shopify so your customer's order page shows live status. It cuts "where is my order" WhatsApp messages by more than half, which matters when you are the customer-support team. If your store isn't live yet, set it up properly first with the Shopify store setup guide for India, and sort your payment stack with the Razorpay vs Cashfree comparison.
Which shipping partner should you pick? By daily order volume
0 to 5 orders a day: aggregator, free tier, zero commitment
You have no negotiating power and no data yet. Sign up for NimbusPost (₹25.50/500g start, free T+3 remittance, no platform fee) and Shiprocket Lite (₹26/500g, but D+8 remittance) in the same week; both are free to open. Ship real orders through both, compare landed cost per delivered order and pickup reliability on your pincodes. For most COD-heavy stores at this stage, NimbusPost's T+3 free remittance wins on cash flow. Skip Delhivery direct: at this volume you'd pay retail-grade rates for a relationship you can't yet use.
5 to 30 orders a day: paid aggregator tier, start negotiating
At 150 to 900 orders a month you qualify for real plans: Shiprocket Advanced (₹499/month, ₹23/500g start, fee refunded if you cross 500 shipments) or NimbusPost Elevate (₹24/500g with a growth manager). The plan fee pays for itself within days at this volume. This is also when you email both platforms' sales teams with your monthly shipment count and ask for better COD terms and rates. They negotiate. Everyone negotiates. If more than 60% of your orders are COD, buy the early remittance add-on: Shiprocket's D+2 at 0.99% costs ₹6 on a ₹599 order and frees six days of float, which is cheap working capital by any standard.
30+ orders a day: direct Delhivery account alongside your aggregator
At 900+ shipments a month, get a direct quote from Delhivery. You'll get volume rates, D+2 remittance as standard, a named contact for disputes, and pickup consistency. But don't cut the aggregator entirely. Keep it live for the 10 to 20% of pincodes where Delhivery is weak, for peak-season overflow, and as a bargaining chip in every rate renegotiation. Single-courier dependence is a real risk: one network's bad month in your region becomes your bad month, with no switch to flip.
If you ship under 5 orders/day → free aggregator plans, favour NimbusPost for free T+3 COD remittance. If 5 to 30 orders/day → paid aggregator tier (Shiprocket Advanced or NimbusPost Elevate), negotiate rates, buy early COD if COD share is over 60%. If 30+ orders/day → direct Delhivery contract for the bulk, aggregator retained for weak pincodes and backup. If your product is light but bulky → prioritise NimbusPost's weight-freeze or lock dimensions in writing before the first pickup. If your buyers are mostly tier 2/3 → test pickup and delivery on your actual pincodes before committing anywhere.
Choosing the partner with the lowest per-500g headline rate. A founder I advised picked a platform for a ₹3/shipment saving, then lost ₹19,000 in one quarter to weight discrepancy deductions he disputed too late, and another ₹11,000 in cash-flow strain from a D+8 remittance cycle that delayed a reorder in his best month. The ₹3 saving earned him about ₹2,700 in the same period. Landed cost per delivered order, remittance speed and dispute handling are the real price. The headline rate is bait.
- Run your top 5 customer pincodes and real box dimensions through each platform's rate calculator; record landed cost including COD charge and GST, not base freight.
- Confirm the COD remittance cycle in writing and price the early-COD option against your reorder calendar.
- Get the RTO charge per courier from the rate card before your first shipment, not from your first invoice.
- Register SKU weights and dimensions upfront; use weight-freeze where offered.
- Photograph every parcel on a scale with dimensions visible for your first 200 shipments.
- Set a weekly calendar reminder to review and dispute weight discrepancies inside the 7-day window.
- Ship 10 test orders before committing; track same-day pickup rate and delivery TAT.
- Connect Shopify and verify tracking status pushes back to the customer's order page.
- Diarise a rate renegotiation every quarter once you cross 300 shipments/month.
Your next action today
Open two free accounts, NimbusPost and Shiprocket Lite, and run your five most common delivery pincodes through both calculators with your real product weight and box dimensions. Build one small sheet: freight + COD charge + GST per platform per pincode. Thirty minutes of work, and you'll know your true shipping line for the Margin Waterfall before you spend a rupee on ads. If you haven't launched yet, slot this into week 5 of the 90-day launch roadmap; shipping setup before store traffic, always.
This guide is by Ravikant Tyagi, who has run national distribution and supply chain operations at Eureka Forbes and Atomberg and now works with early-stage D2C founders as a Fractional COO. If you'd like the complete execution system, calculators, SOPs, templates and operating frameworks behind this process, continue inside D2C Acquisition.Lab.
