DeeCee - 11:11 pm on Feb 29, 2012 (gmt 0)
The given accuracy depends both on what the ISP upload (area, city, neighborhood, ..) and on the service of database used by the web-site.
MaxMind is one company selling location databases. If you for example use their free version, it has always told me that I am in a different city actually located 15 miles away. The paid for version is more accurate and updated and knows me by the right small town. Maybe because of the databases, or maybe because of my ISP sending up fairly accurate information.
My ISP know where my actual house and the IP is. The IP which I have had allocated for probably almost a decade, is located in their databases by a few feet and my account address. For privacy reasons they obviously do not upload that accuracy. But if I was a bad guy, the ISP could show the FBI where I "call from" in a split second. (The FBI probably already knows. :))
All the data providers have to do to devaluate the real values (maybe into a free version) is to offset the GPS coordinates by a slight amount (truncate some decimals) or merely pin it to the closest city name.
For services using actual dynamic IP addresses, the closest location data you would get is the area where that IP is routed out of, since you would need the DHCP allocation databases to know which account owned that IP at a specific point in time. The IP would be moving around between customers.
My databases track locations and world maps of all the "offenders" I catch, and for some countries the location data is almost non-existent. Almost all IPs for some areas show up with the the same exact "generic" GPS locations.