Cookies setting

Cookies help us enhance your experience on our site by storing information about your preferences and interactions. You can customize your cookie settings by choosing which cookies to allow. Please note that disabling certain cookies might impact the functionality and features of our services, such as personalized content and suggestions. Cookie Policy

Cookie Policy
Essential cookies

These cookies are strictly necessary for the site to work and may not be disabled.

Information
Always enabled
Advertising cookies

Advertising cookies deliver ads relevant to your interests, limit ad frequency, and measure ad effectiveness.

Information
Analytics cookies

Analytics cookies collect information and report website usage statistics without personally identifying individual visitors to Google.

Information
mageplaza.com

Magento 2 Table Rate Shipping: Setup Guide & Examples

Vinh Jacker | 03-14-2025

How to Configure Table Rates Shipping Method in Magento 2 - Mageplaza

Shipping costs in an online store aren’t always the same. They can change depending on the product’s weight, size, price, or even where the customer lives. Magento 2 helps you handle this with the Table Rates Shipping method. With it, you can set up flexible rules—for example, charge more for heavier items, or apply different rates for certain regions.

All these rules are stored in a table file (CSV), which you can easily upload to your store. When a shopper checks their cart, Magento will automatically show the right shipping cost. This makes the process clear for customers, saves your team time, and creates a smoother buying experience. In this guide, we’ll show you step by step how to configure Table Rates in Magento 2.

💡 Key Takeaways

  • Magento 2 Table Rate Shipping helps you set custom shipping fees based on order weight, price, item quantity, or destination.
  • Learn how to configure it in 4 simple steps: enable the method, prepare the sample CSV file, import it, and test the setup.
  • The default Table Rate method covers basic needs, while the Mageplaza Magento 2 Table Rate Shipping extension offers advanced features to handle more complex shipping requirements.

What is Table Rate Shipping in Magento 2

In Magento 2, Table Rate Shipping is a default method that calculates shipping costs based on a set of predefined rules stored in a table (CSV file). These rules can be applied under different conditions, such as:

  • Weight vs Destination: charge based on the total order weight and shipping address.
  • Price vs Destination: calculate fees depending on the order value and where it is delivered.
  • Number of Items vs Destination: apply rates according to how many products are in the cart and the shipping region.

For example, you might:

  • Charge $5 for orders under 5 kg and $10 for heavier orders shipped to farther locations.
  • Offer free shipping for orders above $200, while smaller orders are charged $10.
  • Apply $5 shipping for 1–3 items within the city, and $8 for 4 or more items.

This flexibility makes Table Rate Shipping more powerful than other default shipping methods. Here’s how it compares:

Magento 2 shipping methods comparison

With this approach, Table Rate Shipping helps you create more accurate and customer-friendly policies while keeping control over your shipping expenses.

4 Steps to Configure Shipping Table Rates Method in Magento 2

Step 1: Configure the Table Rate Shipping Method

Configure the Table Rate Shipping Method

  • On the Admin Panel, Stores > Settings > Configuration.
  • On the left panel, under Sales, select Delivery Methods.
  • Open the Table Rates section,
    • Enable the shipping method by choosing Yes for that.
    • Set the Title for the table rate shipping on the checkout page. You can use the default value - “Best Way” for the table rate title.
    • Choose Conditions by the calculating methods: Weight v. Destination, Price v. Destination, or # of Items v. Destination.
    • If the order includes virtual products for the price calculating, choose Yes in the Include Virtual Products in Price Calculation field.
      • If you calculate by weight, virtual products don’t affect the result.
      • If you calculate by price or items, they do affect the result.

Delivery Method

  • If you ask to charge an additional handling fee, set Calculate Handling Fee to fixed or percent, and then enter the number you want to set in the Handling Fee field.
  • In the Displayed Error Message field, enter the message you want customers to see when Table Rate Shipping is not available at checkout.
  • Set Ship to Applicable Countries to one of two options:
    • All Allowed Countries : Free Shipping is supported for every country.
    • Specific Countries: Table Rate Shipping is only supported for selected countries.
  • Set the Sort Order on the Shipping Method on the checkout page.
  • Save Config to complete.

📌 Note: Before making the changes listed below, if needed, clear the box that says "Use system value".

Step 2: Prepare the Table Rate Data

Prepare the Table Rate Data

  • In the upper-left corner, select the Scope where the configuration is active, you can choose Main Website or any website you need.

  • Then, the Import and Export option will appear, and the Use as Default checkbox will be next to each field in the Table Rate Shipping section.

Find the CSV file from your computer

  • Click on the Export CSV button and you will receive a Table Rates CSV Data file with the name tablerate.csv on your computer.

Acces to the Import & Export option

Here’s an example of how shipping rates can be set up in the CSV file. In the table below, orders sent to California (CA) and Utah (UT) have lower rates than the rest of the country, and prices decrease as the order subtotal increases.

Example of how shipping rates can be set up in the CSV file

📌 Note:

  • The * symbol is a wildcard, meaning the rule applies to all values in that column (e.g., all ZIP codes within a state).
  • You can adjust the amounts in your CSV to reflect your own shipping policy, this table is just an example of how rules might be structured.
  • Complete the CSV file in a spreadsheet
    • Use an asterisk (*) as a wildcard to represent all possible values in any category.
    • The Country column must contain a valid three-character code for each row.
  • Save the file on your computer after finishing it.*

Step 3: Import the Table Rate Data

  • Go back to the Table Rate Shipping section.
  • Import the “tablerate.csv” file by tapping the Choose File button and then upload the file from your computer.
  • Save Config to complete.

Import the Table Rates Shipping data into your store

💡 Pro Tip:

  • Regularly update rates to reflect shipping cost changes.
  • Keep pricing accurate and competitive.

Step 4: Test and Verify the Rates

After importing your CSV file, it’s important to test the setup to make sure the rates work as expected.

  • Go to the storefront and add products to your shopping cart.
  • Then, navigate to the checkout page.
  • Enter a valid shipping address that matches one of your CSV rules.
  • Select the Table Rates shipping method from the available shipping methods.
  • Verify that the correct shipping fee appears based on your rules.

💡 Pro Tip:

  • Test with different scenarios (e.g., low vs high order totals, different states, multiple items) to confirm every condition works.
  • If the rates don’t display correctly, double-check your CSV formatting. Common issues include typos, extra spaces, or incorrect country/state codes.
  • Monitor abandoned carts to identify if shipping costs are causing drop-offs.

To see how Table Rates work for customers at checkout, here are some simple real-world use cases:

Example Use Case CSV Data Resulting Shipping Options
Change shipping rates based on subtotal & destination region Set different shipping prices depending on order subtotal tiers & shipping region - USA,UT,,100,5.00
- USA,UT,,50,7.50
- USA,UT,,0,10.00
- USA,NY,,200,5.00
- USA,NY,,100,10.00
- USA,NY,,0,20.00
- Orders to UT over $100 cost $5 shipping
- Orders to UT $50-$99.99 cost $7.50 shipping
- Orders to UT under $50 cost $10 shipping
- Orders to NY over $200 cost $5 shipping
- Orders to NY $100-$199.99 cost $10.00 shipping
- Orders to NY under $100 cost $20 shipping
Rates based on weight tiers & destination Charge different shipping prices by order weight ranges & shipping destination - USA,,,10,5.00
- USA,,,20,7.50
- USA,,,30,10.00
- USA,CA,,,7.00
- USA,UT,,,8.00
- USA,,,*,9.00
- Orders to USA under 10 lbs cost $5 shipping
- Orders to USA 10-20 lbs cost $7.50 shipping
- Orders to USA over 20 lbs cost $10 shipping
- Orders to California, USA cost $7 shipping
- Orders to Utah, USA cost $8 shipping
- Orders to the rest of USA cost $9 shipping
Restrict free shipping to specific regions Provide free shipping only to certain areas - CAN,AB,,30,0.00
- CAN,BC,,30,0.00
- CAN,,,30,5.00
- Orders over $30 to Alberta, Canada: Free shipping
- Orders over $30 to British Columbia, Canada: Free shipping
- Orders over $30 to the rest of Canada: $5 shipping

Magento 2 table rates example

Limitations of Magento 2 Default Table Rates

The default Table Rates method in Magento 2 is a good starting point if you want to set up flexible shipping fees without coding. However, as your store grows, you may find some limitations:

  • Only one condition can be applied at a time, which may not cover complex shipping needs.
  • No option to set different rates for specific customer groups or products, making it harder to customize.
  • Managing large CSV files can be time-consuming and prone to errors.

💡 Tip: If you need more flexibility, such as combining multiple conditions, applying rules to certain products or customer groups, or managing shipping settings more easily, consider using the Table Rate Shipping extension to fill in the gaps.

FAQs

1. How can I configure table rates for different store views or websites in Magento 2?

Magento 2 allows you to set different table rates for each store view or website. You can specify unique CSV files for each store view by changing the configuration scope to the desired store view before uploading the rates.

2. What should I do if my shipping rates aren’t showing at checkout?

Run this quick check:

  • Table Rates are enabled and applied to the correct website.
  • The shipping address matches your CSV rules (Country/Region/ZIP).
  • The condition you chose matches your CSV (Weight, Price, or Items).
  • CSV values are clean and sorted logically (no typos, extra spaces, or wrong codes).
  • Clear Cache (System > Cache Management), then test again.

3. Can I set different table rates for different countries?

Yes, Magento 2 allows you to set table rates specific to regions or countries. Check the Magento table rates CSV examples and use cases we mentioned earlier for a deeper understanding on how it works to set up multiple table rates.

4. Is it possible to set shipping rates based on product categories?

No, the default Magento 2 Table Rates method doesn’t support category-specific rates. However, you can achieve this through third-party extensions or custom development.

5. What are the maximum file size limits for table rates CSV files in Magento 2?

While there is no strict limit, larger CSV files with thousands of entries may affect performance. It’s important to keep the file size manageable to ensure smooth operation.

6. Can I add multiple delivery methods?

Yes, Magento 2 allows you to set up multiple shipping methods so you can offer many delivery options to meet your customer needs.

7. Can Magento 2 table rates calculate prices based on the number of items and destination?

The Magento 2 table rate enables shipping cost calculations based on the number of items in each order and their destination. This system ensures that every customer receives a shipping quote suitable to their order’s characteristics. Therefore, you can improve overall pricing accuracy and customer satisfaction.

8. What happens if I receive an error message after setting up my shipping rates?

If an error message appears after configuring your shipping fees, it indicates there might be issues with the entered absolute value data or other aspects of the configuration steps. You need to double-check all the details you’ve entered.

The bottom line

Table Rate Shipping in Magento 2 is a practical way to give customers clear and flexible shipping options. By displaying rates in a simple table format, you make it easier for shoppers to compare choices and select the method that suits them best. This not only improves the checkout experience but also reduces hesitation that can lead to cart abandonment.

Related Topics

x
    Jacker

    Jacker is the Chief Technology Officer (CTO) at Mageplaza, bringing over 10 years of experience in Magento, Shopify, and other eCommerce platforms. With deep technical expertise, he has led numerous successful projects, optimizing and scaling online stores for global brands. Beyond his work in eCommerce development, he is passionate about running and swimming.



    Related Post