Don't trust ZIP code geocoding; they are accurate to within a mile at best. See this post for more information:
One of the biggest misconceptions GIS users have about ZIP codes is that they are a set of polygons that cover the United States--they are not. ZIP codes are a system used by the Postal Service for sorting mail before delivery, and nothing more. If an address receives enough mail, the USPS will just assign them a ZIP code to improve sorting efficiency. Many post offices also have a separate ZIP code just for their P.O. Boxes.
The ZIP Code Tabulation Areas (ZCTAs) are a best-estimate made by the Census Bureau about the spatial delineation of ZIP codes, reverse-engineered from responses to the Bureau's surveys. But it is not exact. I've found significant differences between ZIP codes (from geocoded addresses) and ZCTAs, especially in areas with uneven distribution of postal mail, like dense urban centers, commercial and industrial parks, and very rural areas.