Running a successful online food delivery business isn’t just about great food, it’s also about smart delivery pricing. If your delivery charges are too high, customers leave. If they’re too low, your profits suffer.
If you’re using RestroFood, the powerful WooCommerce-based restaurant ordering plugin, you already have access to one of the most flexible delivery fee systems available: kilometer-wise multi-delivery fees.
In this guide, we’ll walk you through everything you need to know about how the RestroFood Kilometer-Wise Multi-Delivery Fees System works, how to set it up step by step, and best practices to maximize revenue while keeping customers happy.
What is a Kilometer-Based Delivery Fee?
A kilometer-based delivery fee is a dynamic pricing model where the delivery charge a customer pays is calculated based on the actual distance (in kilometers) between the restaurant branch and the customer’s delivery address.
Instead of charging a flat rate to everyone, which either overcharges nearby customers or undercharges far-away ones, kilometer-based pricing ensures each delivery fee is proportional to the real cost of fulfilling that order.
For example:
- A customer 2 km away might pay $1
- A customer 7 km away might pay $3
- A customer 10 km away might pay $5
RestroFood makes this dynamic calculation automatic, removing the guesswork for both restaurant owners and customers.
Why Kilometer-Based Pricing Matters for Restaurants?
Distance-based delivery pricing isn’t just a convenience, it’s a strategic necessity for any serious food delivery operation. Here’s why it matters:
- Fair Cost Recovery: Fuel, rider time, and vehicle wear all increase with distance. A flat fee either loses you money on long-distance orders or frustrates nearby customers who feel overcharged.
- Competitive Advantage: Restaurants that charge fair, transparent delivery fees build more customer trust. Customers near your branch will appreciate lower fees, encouraging repeat orders.
- Branch-Specific Control: If you run a multi-branch restaurant, different branches may serve different areas with different traffic or road conditions. Per-branch kilometer pricing lets you manage this independently.
- Reduced Delivery Refusals: Setting a maximum delivery radius (distance restriction in KM) means riders never get sent on unreasonably long trips, improving staff satisfaction and delivery reliability.
- Scalable Revenue Model: As your restaurant grows and you add more branches, kilometer pricing scales naturally, no need to rethink your entire pricing model.
How RestroFood Calculates Distance?
RestroFood uses Google Maps API to calculate the real-world distance between a restaurant branch location and the customer’s delivery address. Here’s how the full calculation flow works:
Google Maps API / Distance Logic
As seen in Image (Location Settings), RestroFood requires you to set a Google API Key in the Location Settings panel under Restrofood > Settings > Location Settings. This key powers the distance calculation engine behind the scenes.
Without a valid Google API Key, distance-based fees cannot be calculated automatically.
Location Type Selection
Also visible in the image, RestroFood gives you two Location Types to choose from:
- Address: The customer types their delivery address, and Google Maps resolves it to a precise GPS coordinate.
- Zip Code: The customer enters a zip/postal code, which Google Maps converts to a general area coordinate.
For kilometer-based fee accuracy, the Address option is strongly recommended. It provides more precise distance calculations compared to a zip code, which only resolves to a general area.
Delivery Availability Checker
The Delivery Availability Checker toggle ensures that when a customer enters their delivery address, RestroFood verifies whether that address falls within your configured delivery radius before allowing checkout. If the address is outside your set distance restriction, delivery will be unavailable for that branch, preventing failed deliveries.
How to set RestroFood Kilometer-Wise Multi-Delivery Fees System?
Setting up kilometer-wise delivery fees in RestroFood involves two main areas: the global Location Settings and the individual Branch settings.
Step 1: Configure Location Settings
Navigate to Restrofood > Settings > Location Settings in your WordPress admin panel.
- Turn on Delivery Availability Checker
- Set Location Type to Address
- Enter your Google API Key
- Set your Single Branch Shop Location (the physical address of your restaurant) as seen in the image. This is the base point from which distances are measured
Save your settings before moving on.
Step 2: Open the Branch Editor
As shown in the image, navigate to Restrofood > Branches in your WordPress admin sidebar. Open the branch you want to configure (e.g., “Mirpur Branch”) by clicking Edit.
Inside each branch, you can assign:
- Branch Manager
- Kitchen Manager
- Delivery Boy
- Branch Code Number
- Opening/Closing/Break times
Scroll down in the branch editor to find the delivery fee configuration section. This is the core of the kilometer pricing setup.
Step 3: Set Branch Location
In the scrolled-down branch view, you’ll see a Location field where you can search and set the specific shop location for that branch (e.g., “Mirpur”). This is the coordinate RestroFood will use as the starting point for all distance calculations for orders from this branch.
Step 4: Set the Base Branch Delivery Fee
Set branch delivery fee: This is the default/base fee that applies when no kilometer range rule specifically covers a given distance. In the example shown, it is set to 100 (currency units). Think of this as your fallback fee.
Step 5: Set the Maximum Distance Restriction
Set Distance Restrict (KM): This field (set to 15 in the example) defines the maximum distance in kilometers from the branch within which delivery is available. Customers beyond this radius will not be able to place a delivery order from this branch. This protects your riders from impractical long-distance trips.
Step 6: Define Kilometer Range Fees
The most powerful feature is the “Set delivery Fee Inside Kilometer” section. This is where you define specific fee tiers based on distance ranges. Each row has two fields:
- Column 1: Distance in kilometers (the upper limit of that range)
- Column 2: Delivery fee for that range
From the example in the image:
| Distance (KM) | Delivery Fee |
| Up to 5 KM | ৳50 |
| Up to 7 KM | ৳60 |
| Up to 10 KM | ৳80 |
Click “Add Fee On KM” to add additional range rows. Use the Remove button to delete any range you no longer need.
Example Distance Pricing Table
Below is a practical, real-world example of how you might configure kilometer-based delivery fees for an urban restaurant branch:
| Distance Range | Delivery Fee | Notes |
| 0 – 3 KM | $1 | Local neighborhood, fast delivery |
| 3 – 5 KM | $2 | Short-range urban delivery |
| 5 – 7 KM | $3 | Mid-range delivery zone |
| 7 – 10 KM | $4 | Extended delivery zone |
| 10 – 15 KM | $5 | Maximum delivery radius (base fee) |
| Beyond 15 KM | Not Available | Outside delivery radius |
Pro Tip: The “base branch delivery fee” acts as a catch-all for any distance not explicitly covered by your range rows. If a customer is 12 KM away and you’ve only defined ranges up to 10 KM, the base fee will apply.
How Fees Are Calculated in Real-Time?
When a customer places a delivery order on your RestroFood-powered website, here’s exactly what happens behind the scenes:
- Customer enters the delivery address at checkout or the location modal
- Google Maps API is called to calculate the distance from the branch location to the customer’s address
- RestroFood checks the Distance Restriction if the distance exceeds your KM limit, and delivery is marked unavailable
- RestroFood matches the distance against your configured kilometer fee ranges (from lowest to highest)
- The matching fee is applied to the order total automatically
- Customer sees the delivery fee at checkout before confirming the order for full transparency
This entire process happens in real-time, so customers always see the correct delivery fee for their specific location without any manual calculation or staff intervention.
Best Practices for Kilometer Pricing
Getting your kilometer-based fee structure right takes a bit of thought. Here are the most effective practices:
Keep the Number of Ranges Manageable
Avoid creating too many distance tiers. Having 8–10 ranges creates confusion and makes your pricing seem complicated. Aim for 3–5 clear tiers that cover your delivery zone naturally. The example in RestroFood own interface uses just 3 ranges, a great starting point.
Research Your Actual Delivery Costs
Before setting any fees, calculate your real per-kilometer delivery cost: fuel consumption, rider salary per hour, and average speed in your city. This prevents you from setting fees that quietly erode your margins on every order.
Set Your Maximum Radius Realistically
The Distance Restrict (KM) field should reflect what your riders can actually handle while maintaining food quality. Hot food that travels 25 km rarely arrives in good condition. For most urban restaurants, 10–15 KM is a practical maximum.
Balance Profit vs. Customer Experience
Ultra-high delivery fees for short distances will drive customers away. Ultra-low fees for long distances will drain your profits. The sweet spot is a fee structure where:
- Short-distance customers feel they’re getting a fair deal
- Long-distance fees reflect the real cost without feeling punitive
- The base fee acts as a reasonable ceiling
Configure Per-Branch for Multi-Branch Operations
RestroFood branch system allows you to set different kilometer pricing for each branch independently. A branch in a dense urban area might have lower fees and a shorter radius, while a suburban branch might need a wider radius with graduated fees.
Test with Real Addresses Before Going Live
After configuring your fees, use actual customer addresses at various distances to verify the fee calculations are working as expected before launching publicly.
Common Mistakes to Avoid
Even experienced restaurant operators make these configuration errors when setting up kilometer-based delivery fees:
- Not setting a Google API Key: Without this, the entire distance calculation engine fails. RestroFood cannot calculate distances, all location features depend on it.
- Using Zip Code instead of Address for precise billing: Zip codes cover large geographic areas. A customer at the edge of a zip code vs. the center could have very different actual distances. Always use the Address type for accurate fees.
- Setting the Distance Restrict too high: Opening your delivery zone to 30+ KM might seem like more business, but it leads to cold food, unhappy customers, and exhausted riders. Quality control drops fast beyond 15 KM in most cities.
- Forgetting to set the base branch delivery fee: If a customer’s distance exceeds all your defined ranges but is still within your distance restriction, the base fee is the fallback. An unset or zero base fee means you may deliver for free unintentionally.
- Using overlapping distance ranges: Ensure your ranges are sequential and non-overlapping. RestroFood evaluates them in order, so overlapping ranges can lead to unexpected fee assignments.
- Not configuring branch location coordinates: If your branch’s “Search Shop Location” is empty or incorrect (Image 3), all distance calculations will be based on a wrong starting point, leading to completely inaccurate fees.
When to Use Kilometer-Based Fees vs Other Methods?
RestroFood supports multiple delivery fee approaches. Here’s when kilometer-based pricing is the right (or wrong) choice:
| Situation | Best Fee Method | Why |
| Urban restaurant with a wide coverage area | Kilometer-Based | The fairest method when distances vary significantly |
| Small town restaurant with uniform delivery zone | Flat Fee | Simpler, works well when all customers are roughly equidistant |
| Restaurant covering multiple distinct neighborhoods | Kilometer-Based | Accurately prices each neighborhood based on real distance |
| Delivery by postal/zip zones with fixed boundaries | Zip Code Based | Better when your delivery zones are officially defined by postal areas |
| Premium restaurant targeting quality over volume | Kilometer-Based with a tight radius | Control delivery zone quality while charging fairly |
| Ghost kitchen or cloud kitchen | Kilometer-Based | No walk-in customers, delivery distance is everything |
The kilometer-based system is the most scalable and fair model for restaurants experiencing delivery growth, running multiple branches, or operating in areas where distances between customers vary widely.
Frequently Asked Questions (FAQs)
How does RestroFood calculate delivery distance?
RestroFood calculates delivery distance using map APIs like Google Maps, ensuring accurate route-based distance instead of straight-line measurement.
Can I combine kilometer-based pricing with other methods?
Yes, you can combine kilometer-based pricing with zip code or zone-based delivery systems for more flexibility.
Is technical knowledge required to set this up?
No, the system is beginner-friendly and can be configured through an easy dashboard.
Does it work with WooCommerce checkout?
Yes, it integrates seamlessly with WooCommerce and calculates delivery fees during checkout automatically.
Can I limit delivery beyond a certain distance?
Yes, you can restrict orders beyond a specific kilometer range to avoid long-distance delivery issues.
Does RestroFood kilometer-based delivery work with a multi-branch system?
Yes, each branch has its own delivery fee configuration. You can set completely different kilometer ranges and fees per branch, making it ideal for restaurant chains.
Can I set a free delivery zone for nearby customers?
Yes. Simply set the fee for your closest distance range (e.g., 0–2 KM) to zero. Customers within that range will enjoy free delivery, which can be a great promotional tool for local marketing.
Do I need a paid Google API plan?
Google Maps API offers a free tier with a monthly credit, which is often sufficient for small to medium restaurants. However, high-volume operations may need a paid plan. Visit Google Cloud Console to review current pricing and quotas.
Can I use kilometer-based fees alongside table booking or dine-in?
Yes. The kilometer-based fee only applies to delivery orders. Dine-in, table bookings, and pickup orders are not affected by this configuration.
Still Have Questions?
Our FAQs cover the most common questions about RestroFood. If you need personalized advice or have a unique query, our team is ready to help. Contact us!