When Shopify shipping rates display incorrectly, common causes include: customer locations not included in shipping zones, missing or incorrect product weights, overlapping zone configurations, unmet free shipping conditions, app conflicts, or checkout settings blocking rates. This troubleshooting guide covers 12 fixes with step-by-step solutions. Most issues stem from zone configuration or product data errors and can be resolved by verifying zones include customer locations, products have accurate weights entered, and only one shipping rate source (native or app) is active.

Who This Guide Is For
This troubleshooting guide helps Shopify merchants experiencing:
- Wrong shipping amounts at checkout
- “No shipping rates available” errors
- Free shipping not appearing when it should
- Carrier-calculated rates not loading
- Different rates on mobile vs desktop
- Rates changed after installing an app
- International shipping showing incorrect prices
- Customers complaining about unexpected shipping costs
If you’re seeing incorrect shipping rates and need to fix them quickly, this guide provides systematic solutions for the 12 most common causes.
Quick Diagnostic Checklist
Before diving into detailed fixes, check these common culprits:
☐ Customer’s country included in a shipping zone?
☐ Products have weights entered?
☐ Only ONE shipping rate source active (native OR app, not both)?
☐ Free shipping conditions actually met?
☐ Carrier accounts connected properly?
☐ Recent app installs that might conflict?
If any are unchecked, jump to the corresponding fix below.
Identify Your Issue Type (Decision Tree)
- If no rates show at all → Check Fix #1 (zones) or Fix #7 (checkout settings)
- If rates show but wrong amounts → Check Fix #2 (weights) or Fix #6 (app conflicts)
- If free shipping not working → Check Fix #4 (conditions)
- If rates only wrong sometimes → Check Fix #11 (cache) or Fix #6 (app conflicts)
- If rates wrong after app install → Check Fix #6 (app conflicts) or Fix #12 (third-party apps)
- If international shipping issues → Check Fix #8 (currency) or Fix #1 (zones)
Quick Answers
Why are my Shopify shipping rates showing wrong amounts?
Most commonly: incorrect product weights, missing shipping zones, or overlapping zone configurations. Check products have accurate weights entered and customer locations are included in your zones.
Why is free shipping not working?
Verify cart total meets your threshold, conditions are calculated before/after discounts (as configured), products aren’t excluded, and the free shipping rate is set to “Active.”
Why don’t any shipping rates show at checkout?
Customer’s country may not be in any shipping zone, products lack “This is a physical product” enabled, or checkout settings require shipping address but it’s disabled.
How do I test shipping rates without placing real orders?
Add products to cart, proceed to checkout, use test addresses (don’t complete payment). Test multiple scenarios: different weights, zones, cart values.
Fix #1: Shipping Zones Don’t Include Customer’s Location ⭐
Problem
Customer sees “No shipping rates available” or wrong rates because their location isn’t in any of your configured zones.
Common scenarios:
- You ship to “United States” but customer is in a US territory (Puerto Rico, Guam)
- Customer in a country you ship to, but that country isn’t in your zones
- Postal code not included in zone’s postal code list
Solution
Step 1: Verify Customer’s Location
- Ask customer for full address including country
- Note: Some regions have specific requirements (territories, provinces)
Step 2: Check Your Zones
- Settings → Shipping and delivery
- Review each zone’s included countries/regions
- Look for gaps or missing countries
Step 3: Add Missing Locations
- Click the zone where country should be
- Click Edit next to countries/regions
- Search for and select missing country
- Save changes
Step 4: Handle Edge Cases
For US territories:
If customer in Puerto Rico (PR):
– Add “Puerto Rico” to your US zone
OR
– Create separate “US Territories” zone
For postal code zones:
If using postal code restrictions:
– Verify customer’s postal code is in range
– Example: If zone has “10001-10299” but customer is “10300”, they won’t see rates
– Expand range or add specific postal codes
Verification
- Add test product to cart
- Enter customer’s address at checkout
- Verify rates now appear
Fix #2: Product Weights Missing or Incorrect ⭐
Problem
Weight-based or carrier-calculated rates show wrong amounts because products lack accurate weights.
Symptoms:
- Rates way too low (products have no weight)
- Rates way too high (wrong weight units: kg entered as lbs)
- Carrier rates fail to load
Solution
Step 1: Check Product Weights
- Products → Select a product
- Scroll to Shipping section
- Verify weight is entered
- Check unit: lbs or kg (must match your settings)
Step 2: Common Weight Issues
Issue A: No weight entered
Shows: [blank] or 0
Fix: Enter actual package weight (product + packaging)
Issue B: Wrong unit
Shows: 2 kg (but you meant 2 lbs)
Fix: Change to correct unit in product settings
OR change store default units in Settings → General
Issue C: Inaccurate weight
Shows: Product weight only (not package weight)
Fix: Add packaging materials weight
– Product: 5 lbs
– Box + padding: 0.5 lbs
– Enter: 5.5 lbs
Step 3: Bulk Update (if many products affected)
- Export products (CSV)
- Update weight column
- Import updated CSV
- Verify in admin
Step 4: Set Default Weight (optional)
For products without weights:
- Settings → Shipping and delivery
- Set default package weight
- Use as fallback for unweighed items
Verification
- Add product to cart
- Check if rates now calculate correctly
- Compare to expected carrier costs
Fix #3: Shipping Zones Overlap or Conflict
Problem
You have multiple zones containing the same location, causing confusion or wrong rates.
Example:
Zone 1: “North America” (includes US, Canada, Mexico)
Zone 2: “United States” (includes US)
Customer in US sees rates from BOTH zones
→ Duplicate rates or wrong rate selected
Solution
Step 1: Audit Your Zones
- Settings → Shipping and delivery
- List all zones and their included countries
- Identify overlaps
Step 2: Restructure Zones
Option A: Hierarchical structure
Before:
– Zone 1: North America (US, CA, MX)
– Zone 2: United States
After:
– Zone 1: United States (only US)
– Zone 2: Canada (only CA)
– Zone 3: Mexico (only MX)
Option B: Use “Rest of World”
– Zone 1: United States
– Zone 2: Canada
– Zone 3: Europe (list countries)
– Zone 4: Rest of World (don’t specify countries – catches everything else)
Step 3: Consolidate Rates
If you want same rate for multiple countries:
Create one zone: “International”
Include: Canada, UK, Australia, etc.
Add single rate: $25 international shipping
Verification
- Test with addresses from potentially overlapping zones
- Verify only ONE appropriate rate shows
- Check that “Rest of World” catches unlisted countries (if used)
Fix #4: Free Shipping Conditions Not Met
Problem
Free shipping option doesn’t appear even though customer thinks they qualify.
Common confusion:
- Threshold calculated before or after discounts
- Tax included or excluded from threshold
- Weight or product limitations
- Free shipping rate is “Inactive”
Solution
Step 1: Verify Free Shipping Configuration
- Settings → Shipping and delivery
- Find your free shipping rate
- Check status: Must be “Active”
- Note the condition (e.g., “Orders over $75”)
Step 2: Understand Threshold Calculation
Before/After Discounts:
Cart subtotal: $80
Discount code: -$10
Final total: $70
If threshold is $75:
– “Based on order subtotal”: $80 → Free shipping ✓
– “After discounts”: $70 → No free shipping ✗
Check: Settings → Checkout → “Require minimum purchase for free shipping”
Step 3: Check Product Exclusions
Some products might be excluded:
- Edit free shipping rate
- Look for product-based conditions
- Verify cart items aren’t excluded
Step 4: Verify Weight Limits (if applicable)
Free shipping condition:
“Orders over $75 AND under 10 lbs”
If cart is $80 but 12 lbs:
→ Free shipping doesn’t apply (weight exceeded)
Step 5: Enable Free Shipping Rate
If status shows “Inactive”:
- Click Edit on the free shipping rate
- Toggle to “Active”
- Save
Verification
- Add products totaling threshold amount
- Proceed to checkout
- Verify free shipping option appears
- Test edge cases (exactly at threshold, just below)
Fix #5: Carrier-Calculated Rates Not Loading
Problem
Real-time carrier rates (USPS, UPS, FedEx) don’t appear or show errors.
Symptoms:
- “Carrier rates unavailable”
- Rates never load (spinning wheel)
- Error message at checkout
Solution
Step 1: Verify Carrier Account Connection
- Settings → Shipping and delivery
- Check “Carrier accounts” section
- Verify accounts are connected and active
- Look for error messages or warnings
Step 2: Check Shopify Plan Requirements
Carrier-calculated shipping availability:
- Depends on your Shopify plan
- Typically included on Advanced and Plus
- Some plans can add this feature for extra fee
- Verify your plan supports this feature
Step 3: Verify Package Information
Carriers need accurate data:
Required:
☐ Origin address (your warehouse)
☐ Product weights (all items)
☐ Package dimensions (for dimensional weight)
☐ Destination address (customer)
Missing any of these → Rates fail to load
Step 4: Test Carrier Connection
- Create test order manually in admin
- Enter test address
- Check if carrier rates load
- Review error messages
Step 5: Common Carrier Issues
Issue: Rates too expensive
Problem: Using retail rates (not negotiated)
Solution: Contact carrier for business discounts
OR use custom rates instead
Issue: Some carriers work, others don’t
Problem: Partial account connection
Solution: Reconnect affected carrier accounts
Issue: Rates work sometimes but not always
Problem: Carrier API timeout or downtime
Solution: Add backup custom rates as fallback
Verification
- Test checkout with multiple addresses
- Verify rates load within 3-5 seconds
- Compare rates to carrier websites (should match)
Fix #6: Shipping App Conflicts ⭐
Problem
After installing a shipping app, rates show incorrectly or not at all. Multiple rate sources active simultaneously.
Common scenario:
You have:
– Native Shopify rates configured
– Shipping app installed
– Both trying to provide rates
→ Conflicts, duplicates, or wrong rates display
Solution
Step 1: Identify Active Rate Sources
Check what’s providing rates:
- Settings → Shipping and delivery (native Shopify)
- Apps → Review installed shipping apps
- Note which ones are active
Step 2: Choose ONE Rate Source
Option A: Use Native Shopify Only
Action: Disable shipping app
- Apps → Locate shipping app
- Uninstall or disable
- Verify native rates work
Option B: Use App Only
Action: Disable native rates
- Settings → Shipping and delivery
- For each zone, set rates to “Inactive”
OR delete custom rates
- Keep zones but let app provide rates
Step 3: Check App Settings
If keeping app:
- Review app’s rate calculation settings
- Ensure it’s set to “Replace Shopify rates” (not “Add to”)
- Verify app rates are enabled
- Check for app-specific zone or product conflicts
Common shipping apps:
- ShipEZ (distance-based, conditional rules)
- Advanced Shipping Rules by Zegsu (complex logic)
- Shipping Rates Calculator Plus (simple tiers)
- Table Rate Shipping by Bolder Apps (custom rate tables)
- Calcurates (multi-carrier rate shopping)
If using one of these, check their documentation for conflict resolution with native Shopify rates.
Step 4: Clear Conflicts
Common conflicts:
Conflict: Native free shipping + App rates
Result: Two different rate options show
Fix: Disable one (choose which to keep)
Conflict: App calculates by distance, native by weight
Result: Both show, confusing customers
Fix: Disable native weight-based rates
Step 5: Test After Changes
- Clear browser cache
- Test checkout
- Verify only expected rates show
- Check rate log (if app has one) to see what calculated
Verification
- Test multiple scenarios (different products, addresses)
- Verify consistent rate display
- Check no duplicate or conflicting options
Fix #7: Checkout Settings Blocking Options
Problem
Checkout settings inadvertently prevent shipping rates from displaying.
Symptoms:
- “Shipping method” section missing entirely
- Can’t proceed past checkout
- Address fields behave oddly
Solution
Step 1: Check Checkout Customizations
- Settings → Checkout
- Review “Customer information” section
- Check “Shipping address” settings
Common issues:
Issue: “Don’t require a shipping address” enabled
Result: No shipping rates show (Shopify thinks nothing needs shipping)
Fix: Enable “Require a shipping address”
Issue: Custom checkout scripts blocking
Result: Rates don’t load properly
Fix: Temporarily disable scripts to test
Step 2: Verify Account Settings
If using Shopify Plus:
- Check Scripts Editor
- Review checkout.liquid customizations
- Disable temporarily to test
Step 3: Theme Compatibility
Some themes modify checkout:
- Switch to default theme temporarily
- Test if rates work
- If yes → Theme issue, contact theme developer
Verification
- Test in incognito/private mode
- Try on different browser
- Test on mobile device
- Verify rates appear consistently
Fix #8: Currency Conversion Issues
Problem
International customers see wrong shipping rates due to currency conversion problems.
Symptoms:
- Rates in wrong currency
- Rates not converting at all
- Conversion rate seems off
Solution
Step 1: Verify Multi-Currency Setup
- Settings → Markets
- Check enabled currencies
- Review conversion settings
Step 2: Check Shipping Rate Currency
If you set:
Shipping rate: $10 USD
Customer in UK:
– Should see: £7-8 GBP (converted)
– Might see: $10 (not converted)
– Might see: £10 (wrong conversion)
Step 3: Configure Currency Conversion
For Shopify Payments:
- Currency conversion automatic
- Verify it’s enabled in payment settings
For third-party processors:
- May need app for currency conversion
- Check app settings for shipping rate conversion
Step 4: Zone-Specific Rates (Alternative)
Instead of conversion, set rates per region:
Zone: United States
Rate: $10 USD
Zone: United Kingdom
Rate: £8 GBP
Zone: Europe
Rate: €9 EUR
This avoids conversion issues but requires more setup.
Verification
- Test with addresses in different countries
- Verify rates display in local currency
- Check conversion rates are reasonable
Fix #9: Product Variants Have Wrong Settings
Problem
Variants have different weights, shipping requirements, or settings causing incorrect rates.
Example:
Product: T-Shirt
Variant: Small (weight: 0.3 lbs) ✓
Variant: Large (weight: [blank]) ✗
→ Large size shows wrong shipping
Solution
Step 1: Check Variant-Specific Settings
- Products → Select product
- Click Edit on a variant
- Scroll to variant-specific fields
- Check: Weight, “Requires shipping,” dimensions
Step 2: Common Variant Issues
Issue: Missing variant weights
Fix: Enter weight for each variant
– Small: 0.3 lbs
– Medium: 0.4 lbs
– Large: 0.5 lbs
– XL: 0.6 lbs
Issue: “Requires shipping” unchecked
Fix: Enable for physical product variants
Leave disabled only for digital items
Issue: Variants in different locations
If you have multiple warehouses:
– Verify correct fulfillment location per variant
– May affect shipping rates if calculating from different origin
Step 3: Bulk Update Variants
For many variants:
- Export products (CSV)
- Update variant weight column
- Import updated CSV
Verification
- Add different variants to cart
- Verify rates change appropriately with weight
- Test each variant independently
Fix #10: Shipping Profile Not Applied to Products
Problem
Products aren’t assigned to correct shipping profile, causing wrong rates.
Scenario:
You created:
– Profile A: “Standard Items” (weight-based rates)
– Profile B: “Furniture” (flat $100 rate)
Product: Couch
Assigned to: Profile A (wrong!)
Result: Shows $15 weight-based rate instead of $100 flat
Solution
Step 1: Check Product’s Shipping Profile
- Products → Select product
- Scroll to Shipping section
- Look for “Shipping profile” dropdown
- Verify correct profile selected
Step 2: Reassign Products
Single product:
- Edit product
- Change “Shipping profile” to correct one
- Save
Bulk reassign:
- Settings → Shipping and delivery
- Click shipping profile
- Click Manage products
- Add or remove products from profile
Step 3: Review Profile Rates
Verify profile has correct rates configured:
- Open shipping profile
- Check zones and rates
- Ensure they match intended pricing
Verification
- Add product to cart
- Verify correct profile’s rates appear
- Test with products from different profiles
Fix #11: Cache or Browser Issues
Problem
Old shipping rates cached, showing outdated prices even after updates.
Symptoms:
- Changed rates but old ones still show
- Rates correct in admin but wrong at checkout
- Different rates on different devices
Solution
Step 1: Clear Store Cache
- Online Store → Themes
- Actions → Edit code
- (Some themes have cache clear option)
- OR wait 5-10 minutes for automatic refresh
Step 2: Clear Customer Browser Cache
Chrome:
Ctrl+Shift+Delete (Cmd+Shift+Delete on Mac)
→ Clear cached images and files
→ Clear for “All time”
All browsers:
- Test in incognito/private mode
- Bypasses cache entirely
Step 3: Clear Shopify Admin Cache
- Log out of Shopify admin
- Clear browser cache
- Log back in
- Verify rates in admin
Step 4: Check CDN Cache
If using CDN or caching app:
- Purge CDN cache
- Wait 5 minutes
- Test again
Verification
- Test in incognito mode (guaranteed fresh)
- Test on different device
- Test on mobile network (not same WiFi)
- Verify rates match admin settings
Fix #12: Third-Party App Modifying Checkout
Problem
Another app (not specifically for shipping) interferes with rate display.
Common culprits:
- Checkout customization apps
- Discount/promotion apps
- Upsell apps
- Custom field apps
Solution
Step 1: Identify Recent App Installs
- Apps → Review recently added apps
- Note anything installed around time issues started
- Check if any modify checkout process
Step 2: Disable Apps One by One
Systematic testing:
- Note current issue
- Disable one app
- Test checkout
- Issue resolved? → That app caused it
- Issue persists? → Re-enable, try next app
Step 3: Common App Conflicts
Discount apps:
- May interfere with free shipping thresholds
- Check if discount app has shipping settings
Checkout customization apps:
- Might hide or modify shipping section
- Review app’s checkout customization settings
Subscription apps:
- May have separate shipping logic
- Check subscription shipping settings
Step 4: Work with App Developer
If you need the app:
- Contact app support
- Explain shipping rate issue
- Ask for compatibility fix
- They may have settings to prevent conflict
Verification
- With problematic app disabled, verify rates work
- Re-enable and see if you can adjust settings to prevent conflict
- Consider alternative apps if conflict unsolvable
Advanced Troubleshooting: Developer Tools
If standard fixes don’t work, use browser developer tools:
Step 1: Open Developer Console
Chrome/Firefox:
Right-click checkout page → Inspect → Console tab
Step 2: Look for JavaScript Errors
Red errors in console might indicate:
- Script conflicts
- Failed API calls
- Theme errors
Step 3: Check Network Tab
- Network tab in developer tools
- Reload checkout page
- Look for:
- Failed requests (red)
- Shipping API calls
- Long load times
Step 4: Check for Blocked Resources
Browser extensions might block:
- Ad blockers
- Privacy extensions
- Script blockers
Test in incognito with extensions disabled.
When to Contact Shopify Support
Contact support if:
- Tried all fixes above without success
- Suspect Shopify platform bug
- Carrier accounts won’t connect (despite correct credentials)
- Need account-specific assistance
- Rates work for you but not customers (account permission issue)
Prepare for support:
- List fixes you’ve tried
- Provide example orders or addresses showing issue
- Screenshots of settings
- Timeline of when issue started
Prevention: Monthly Shipping Audit
Prevent future issues with regular checks:
Monthly checklist:
☐ Test checkout with addresses in each zone
☐ Verify product weights still accurate
☐ Check for new app conflicts
☐ Review carrier costs vs your rates
☐ Test free shipping threshold
☐ Verify carrier accounts connected
☐ Check for abandoned carts at shipping step (indicates issue)
☐ Review customer support tickets mentioning shipping
Quarterly review:
☐ Update rates if carrier costs increased
☐ Audit zones (expanded to new countries?)
☐ Review shipping app performance
☐ Test mobile vs desktop checkout
☐ Verify international currency conversion
Shopify Shipping Rate Troubleshooting FAQs
Q: Why do shipping rates work on desktop but not mobile?
A: Usually indicates caching or theme issues. Clear mobile device cache, test in mobile browser’s private mode, and verify your theme’s mobile checkout isn’t broken. Also check if any apps modify mobile checkout differently than desktop. Test on multiple devices to isolate the issue.
Q: Can I charge different shipping rates to different customers?
A: Shopify’s native calculator doesn’t support customer-based rates. You need an app that allows rules based on customer tags. For example, you could create rules where wholesale customers (tagged “wholesale”) pay different rates than retail customers. Apps like ShipEZ or Advanced Shipping Rules by Zegsu offer this customer segmentation feature.
Q: How do I test shipping rates without placing real orders?
A: Add products to cart, proceed to checkout, and enter test addresses (don’t complete payment). Test multiple scenarios: different weights, zones, cart values. Use addresses you know are in different zones. For carrier-calculated rates, use real addresses to see actual carrier quotes.
Q: Why do my shipping rates change when I use a discount code?
A: Check if your free shipping threshold is set to apply before or after discounts in Settings → Checkout. If set to “after discounts,” applying a code reduces the cart total and might drop it below the free shipping threshold. You can change this setting to calculate before discounts.
Q: Can incorrect shipping rates cause customers to abandon checkout?
A: Yes, shipping rate issues are a major cause of cart abandonment. If rates are too high (showing wrong amount), don’t appear at all (configuration error), or load slowly (carrier API timeout), customers leave. Monitor your checkout analytics for abandonment at the shipping step—this often indicates rate problems.
Q: How do I fix “No shipping rates available” for a specific country?
A: First, verify the country is included in one of your shipping zones (Settings → Shipping and delivery → Check each zone). Second, ensure products have “This is a physical product” enabled and weights entered. Third, check if any apps are blocking rates for that country. Create a zone specifically for that country if needed.
Q: Why are my carrier-calculated rates different from what carriers show on their websites?
A: Carrier-calculated rates in Shopify use your negotiated business rates (if you have a carrier account connected). These differ from retail rates shown on carrier websites. Also check if dimensional weight is being calculated—this can make rates higher than expected based on actual weight alone.
Q: Can I have some products with free shipping and others without?
A: Yes, use shipping profiles. Create a “Free Shipping Items” profile with a $0 rate, and a “Paid Shipping Items” profile with regular rates. Assign products accordingly. At checkout, Shopify combines the profiles—if any item requires paid shipping, that rate applies to the entire order. For more granular control (like per-product shipping rules), use apps like ShipEZ with product-specific rules.
Q: Why do my shipping rates keep changing on their own?
A: This usually indicates: (1) Carrier-calculated rates fluctuating with current carrier pricing, (2) An app updating rates based on changing factors (distance, product prices), (3) Conflicting apps both trying to set rates, or (4) Your rates are based on variables like weight and customers are adding different items. Check your rate source and ensure only one system is actively providing rates.
Q: How long does it take for shipping rate changes to appear at checkout?
A: Native Shopify rate changes are immediate. App-based rate changes typically appear within 1-2 minutes. If changes aren’t showing, the issue is likely caching (customer’s browser, your CDN, or Shopify’s cache). Have customers clear their cache or wait 5-10 minutes. Test in incognito mode to verify changes without cache interference.
Conclusion: Get Your Shipping Rates Fixed
Incorrect shipping rates hurt both you and your customers. Most issues fall into one of the 12 fixes above, with zones, weights, and app conflicts being the most common.
Quick fix order (try these first):
- Verify zones include customer locations
- Check product weights are entered
- Disable conflicting apps temporarily
- Test in incognito mode (rules out cache)
If still broken:
- Work through remaining fixes systematically
- Use browser developer tools
- Contact Shopify support with details
Prevent future issues:
- Monthly shipping audits
- Test after installing any new app
- Monitor checkout abandonment rates
- Keep product data (weights) accurate
Fix shipping rates now, prevent abandoned carts later.
