Here are two reasons why you'd see a zero browse time in your reports:
1: Some sites are not sites that users actually browse, and hence we give them a zero value. We restrict Browse time calculations to only those sites that render html text page views. There is no browse time assigned to requests for HTTP sites that are only referrals and other content type, such as streaming audio files. Non viewable sites typcialy return HTTP status codes of greater than 200, and less than 304. We also check if the HTTP type is not text/html. We need at least one these conditions to be met, before we declare the site as non-viewable.
2: If a viewable URL is recorded as being Visited at the same time using the same client IP/User-id pair on exactly the same second, the first URL mentioned in the Acess log will be recorded with a zero browse time, and we will consider the second URL as the page which the user/client ip pair browsed.