How is uptime determined?

We look at the status code returned. Any code that results in access, will return as online. In other words, if any code from 200 up and including 499, will return as online. Error 500's will return as offline.