When you use weight-based shipping rules, shipping_weight is required. Without it, Google can't calculate shipping correctly and may default to base rates.
Why this happens
Either the field was never populated, or weight is in a unit Google doesn't recognize.
How to fix it
Add shipping_weight using format 'NUMBER UNIT' — e.g., '2.5 lb' or '1.2 kg'.
Accepted units: lb, oz, g, kg.
Set realistic packaged weights (include packaging, not just product).
Common pitfalls
Using 'pounds' instead of 'lb'
Forgetting that the unit is required after the number