UPS® address validation | What UPS isn’t telling you
UPS Address Validation is an API used to determine the deliverability of addresses offered by the United Parcel Service. The UPS also offered a web-form to validate addresses, which was taken down by UPS in 2023. The UPS address validation API is free to use and enables developers to add UPS address validation to their internal and customer shipping address forms.
While the address validation service offered by UPS can be useful, there are several limitations. For example, the UPS Address Validator skips validating house numbers, ignore apartment numbers, and doesn't permit database address cleansing—to name a few.
In this article, we'll cover several additional limitations.
Depending on your needs, this lack of features can create obstacles and these limitations should be understood before using their services for validation.
In contrast, Smarty provides flexible, high-capacity, hyper-accurate address validation that return more data points than the parcel service.
Try our tools now and continue reading to understand more about address validation with UPS.
US Address Validation | International Address Validation | Address Validation APIs |
---|---|---|
In this article we’ll cover:
- The UPS Address Validator principle
- UPS API Terms of Service limitations
- UPS limitations with building, suite & apartment numbers
- UPS address validation API speed
- UPS API & CASS certification
- Metadata included with the UPS address validation API
- UPS address validation vs Smarty
- Address validation criteria checklist
The UPS Address Validator principle
The UPS is a shipping company—no surprise there. Accordingly, the UPS Address Validator was written to aid in the delivery of UPS packages by trained UPS delivery people specifically. Since the delivery service knows that their employees are handling the parcel from initial receipt to the customer's doorstep, the validator is focused on getting the driver to the appropriate street or “close enough” to the delivery point for the UPS driver to figure out the rest.
This “close enough" principle simplifies how the UPS Address Validator is coded since UPS doesn't have to worry about the most granular and difficult-to-maintain elements of addresses. Namely, it essentially skips or ignores validation of the numbers for houses, buildings, apartments, suites, and units.
The benefit is that this approach eliminates many errors in the validation process and simplifies maintenance of the code base.
The downside is that not validating these granular elements also makes package delivery more difficult for drivers, since items get shipped to addresses that don't actually exist. Inevitably, “close enough” also increases the volume of lost, returned, and delayed packages.
UPS is not the only offender. The “close enough” principle is frequently used in the code of mapping, navigation, and delivery validation services. Google Maps, Bing Maps, and FedEx all ignore certain elements of addresses in order to simplify their code and reduce user errors during address entry. All these services can also leave the user high and dry once they get to the correct street.
Appropriately, the statement “NOTICE: UPS assumes no liability for the information provided by the address validation functionality.” is featured prominently in the UPS terms of service.
UPS API Terms of Service limitations
Let's start with the elephant in the room: what UPS legally allows you to do with their address validation API.
The truth is, if you plan to use the UPS address validation API for anything other than to check a street address that you’re going to ship a package to USING UPS, then you’re violating the UPS terms of service. This is extremely limiting compared to other address validation APIs and tools.
Here is the legalese contained in the UPS Terms of Service:
To spell this out more clearly, here are some examples of instances where you’re NOT allowed to use the UPS address validation API:
- Checking addresses for letters you’ll be sending using the USPS, FedEx or DHL
- Cleansing, validating, and standardizing addresses in your database
- Data-blending user address records
- Checking billing addresses of customers
- Anything else not directly related to shipping packages with UPS
So, what can you do with the UPS address validation API? Validate and ship to addresses of customers using the UPS. Literally everything else is off limits. But, there are many business use cases for address validation outside of shipping that you can learn about in our 5 Ways Companies Use Address Verification to Improve Business Results ebook. Access it here:
UPS building, suite & apartment number limitations
Did you know there are nearly 39 million Americans living in apartment buildings? That’s 1 in 8 people! That number doesn’t count the millions of other secondary addresses like office suites, departments, units, and rooms in the US either. What’s more, these numbers grow every year. So it can be very frustrating when an address validation software doesn’t tell you a building has apartments or verify that the secondary unit number is real.
Yep, you guessed it. This is the case with the UPS address verification API. UPS doesn’t validate the building number or secondary number. No matter how accurate your physical address is, if your users fat-finger or even omit their secondary unit number, the UPS address checker will probably miss it. Without realizing it, you’ll be making decisions based on incomplete or incorrect data.
Using shipping as an example; Imagine the time it would take for a commercial delivery worker to go to an apartment building and attempt delivery with an incorrect or missing apartment number! If the delivery driver can't find the apartment, the package gets returned or gets charged $15 to add the missing apartment number and attempt redelivery. Would you be frustrated? Would you be THIS frustrated?
What’s more, the UPS system doesn’t really validate house numbers either. Let’s look at an example from a UPS help page.
If you enter:
205 Devonwood Dr.
Atlanta, GA 30328
The UPS Address Verification API says the address is valid.
Unfortunately, 205 Devonwood Dr. doesn’t actually exist! The actual house numbers on Devonwood Drive range from 135 to 285 but 205 is not one of them. UPS looks at a range of numbers and marks any number inside the range as “valid”. In this case, UPS's validator accepts any value from 100 to 299 as valid.
In total, there are 34 possible real house numbers on Devonwood and 166 non-existant addresses that UPS labels as valid. All because the house number is greater than 99 and less than 300. Address validation that relies on ranges instead of real house numbers, quickly leads to uncaught errors.
Fortunately (for UPS), the shipper can profit when users incorrectly enter addresses. This is even true if the UPS validator shows the address as valid. Per their terms of service, “An Address Correction charge will be assessed to the shipper for an address correction or completion. UPS Ground with Freight Pricing $13.40 per package up to a maximum of $91.00 per shipment.”
UPS address validation API speed
Do you like fast APIs? Do you want an address validation API with easy to understand documentation that’s fast to implement? Do you want to batch process large address files with a sub 100ms response time? Sorry. The UPS address validation API offers none of the above.
First, UPS API reports response time speeds up to 700ms per single address lookup. Do you need to go back and read that again? Here, I’ll recap: Number of lookups UPS can deliver per second: 1.4. Second, once you have it tied into your system, there’s no way to run batch lists. You’re limited to 1 shipping address at a time. That sort of experience is likely to frustrate users.
What about the speed of implementation? How good are the docs? According to the UPS API knowledge base, an implementation may take as little as a week for a very skilled developer to implement, or a few months for one who is less skilled. Hopefully, you’re a skilled developer because we don’t think anyone wants to spend months incorporating a simple address API. Fortunately, there are street address APIs that can be fully implemented in just a few hours. Just not APIs offered by UPS.
UPS API & CASS certification
CASS stands for The Coding Accuracy Support System (CASS). It's a tool created and used by the USPS to ensure the accuracy of software that taps into their database. Is the address quality that comes with CASS Certification a box you need checked for your project? Unfortunately, the UPS address validation API is not CASS certified.
Metadata included with the UPS address validation API
Now we’re getting into the meta. If you enter an address into the UPS validation tool, they’ll deliver three points of address details:
- Valid or not
- Address written as it sits in their database
- Add +4 to the ZIP Codes
That is adequate if you’re just shipping packages.
If you need address data intelligence, there are more comprehensive solutions than what the UPS address verification API offers. Data like congressional district, FIPS Code, geocode, time zone, RDI, and address standardization for every address entered translates to making far better business decisions.
UPS address validation vs Smarty
With all the restrictions that come with UPS address validation, you may be looking for alternative and more flexible options. Smarty provides a strong contender to the UPS address verification and their API. Here’s how Smarty stacks up against the shipping company.
UPS | Smarty | |
Terms of Service restrictions | Only for shipping UPS packages | Pretty darn unrestricted |
Validates secondary addresses | ❌ | ✅ |
Validates building number | ❌ | ✅ |
Batch address processing | ❌ | ✅ |
Addresses per second | 1.4 | 50 - 30,000+ |
Implementation time | Weeks to months | Hours to days |
CASS certified | ❌ | ✅ |
Included metadata | Valid or not, ZIP+4 | Valid or not, ZIP+4, 40+ additional points |
Smarty allows you to use our address validation API for shipping addresses, database cleansing, data blending, address enrichment and just about anything else you might need to do with address data.
The 1:10:100 rule highlights the importance of quality control. It states that, if it costs $1 to verify the data before it enters your system, it'll cost $10 to identify and clean the bad data after it enters, and will cost $100 each time a failure is caused by bad data.
By validating the secondary address data and building number immediately, the data that enters your system is cleaner, more reliable and less expensive to maintain.
Smarty allows you to batch process addresses thousands at a time and is capable of keeping up with anything you can throw at us. Starting at 50 addresses per second with a sub 100ms response time and available speeds north of 30,000 addresses per second means that you get everything you need and more.
With world-class support and documentation, developers are able to push to production fast. Here’s what some of our customers have said about setup time:
“The key to a good API is to allow the developer to not spend 3 days of learning. Took me an hour [to get] up and running.”
- Patrick D
“Smarty came to the rescue and was drop-dead easy to use by our developers. I think they implemented it in a day or two.”
- Steve J
“The ease of using the service is top notch. We were able to get up and running within minutes.”
- Justin C.
Smarty is CASS certified, lightning-fast and provides 40 points+ of metadata including congressional district, county information, time zone, RDI and more. See what Smarty can do for your project. Start a free trial today.
Address validation criteria checklist
The UPS address validation API may be limited but it can be a great solution if your needs fit within their legal, software, and hardware restrictions. At “Free” the price is right but only you can determine if it fits your needs. If you determine that UPS isn’t what you need, we would suggest you find an API that meets the following criteria:
▢ Is allowed to be used with any shipping company
▢ Is allowed to be used for address cleansing and blending
▢ Validates the building number
▢ Validate secondary numbers like apartments, suites, and unit numbers
▢ Offers batch processing
▢ Is CASS Certified
▢ Is fast and easy to set up, well documented, and supported
▢ Includes extra metadata (geocode, FIPS, RDI, Time Zone, etc.)
Fortunately, Smarty meets all the above criteria. Give us a test drive and see what we can do for you, or access our 5 Ways Companies Use Address Verification to Improve Business Results ebook.