Rate Shop USPS with EasyPost

EasyPost is a multi-carrier rate shopping shipping solution. The EasyPost API is one integration point for 100+ carriers, including USPS. All USPS functionality and pricing are accessible using the EasyPost API. EasyPost standardizes the inconsistencies across carrier APIs with its RESTful interface.

For access to all of the USPS API functionality through EasyPost, just sign up or get in touch with one of our shipping experts.

All EasyPost accounts receive USPS Commercial Plus Pricing (CPP).

USPS pricing is split four tiers. The tiers are as follows:

  • Retail Pricing
  • Commercial Base Pricing (CBP)
  • Commercial Plus Pricing (CPP)
  • Negotiated Service Agreement (NSA)

Retail is the rate you pay when you purchase postage or parcel at a Post Office, or often at a UPS Store, FedEx, or most retail settings.

Commercial Base Pricing is the next level up. This rate is the same as you'll pay most anywhere online, and has significant savings over Retail.

Commercial Plus Pricing provides even more savings over Commercial Base Pricing, which is the rate we provide to everyone using the EasyPost API.

Negotiated Service Agreement has the highest level of savings on USPS. These are for only the highest volume shippers, and as the name suggests, are negotiated on a per customer basis.

For access to all of the USPS Rates functionality through EasyPost, just sign up or click the button below and we'll be in touch shortly.

Tracking Packages

Track packages across all major carriers.

Address Verification

Validate domestic and international addresses.

International & Customs

Learn how to handle international shipping seamlessly.

Shipping Insurance

Shipping insurance for all items sent with EasyPost.

EasyPost: Built for Developers

  • USPS Commercial Plus Pricing on ALL accounts
  • Instant Access to USPS, UPS, FedEx, and DHL & more
  • Try EasyPost for FREE, No Upfront Costs
  • Clients Libraries for .Net, Java, Ruby, Python, Node, and PHP
  • Millions of packages shipped each month using EasyPost!
# Create To and From Addresses
from_address = EasyPost::Address.create(...)
to_address = EasyPost::Address.create(...)

# Create Shipment and Get Rates
shipment = EasyPost::Shipment.create(
  from_address: from_address,
  to_address: to_address,
  parcel: {
    predefined_package: 'Parcel',
    weight: 32.8

# Buy Shipping Label
shipment.buy(rate: shipment.lowest_rate())

Leading Companies Rely on EasyPost


QALO uses EasyPost to automate their returns for an unbeatable customer experience.


With EasyPost's API, Expedited Passports & Visas cut their operational load in half.


Casper sped up their European launch thanks to EasyPost's support of over 30+ European carriers.

Connect to EasyPost Today

Get Started with EasyPost Talk to a Shipping Expert

Sign up and start shipping in the same day. We have our USPS API live and ready for you to test with. We also have extensive client documentation in over six different languages to help you get started. If you have any questions, or if you want to talk logistics, feel free to reach out to one of our shipping experts.