First byte time grade / https

Does the first byte time grading take into account whether the site is http or https ?

Yes. The SSL negotiation time is added to the baseline time (basically ignored).

Could it make sense to have a higher target first byte time for https sites, since they will always be slower than http ?

It does have a higher target - the SSL negotiation time is added to the target time that it would have received otherwise.

I’ve a https page which is rated D with :

First Byte Time (back-end processing): 65/100
447 ms First Byte Time
105 ms Target First Byte Time

From the chart :
Start Offset: 0.001 s
DNS Lookup: 5 ms
Initial Connection: 36 ms
SSL Negotiation: 361 ms
Time to First Byte: 43 ms

Which looks like it meets the target first byte time of 105ms, when SSL is excluded.

Any chance you can share the test result (feel free to mail it to me at if you don’t want to post it here). Sounds like a bug that should be pretty easy to track down (and since the grade is calculated on the fly on the server I can fix it retroactively)



Email sent.

All fixed, thanks. It’s one of those embarrassingly stupid mistakes where a single missing character causes subtle mistakes (in this case I forgot to put a $ in front of the sslTime variable).

Thanks for fixing it so quickly - I’m now getting an A rating.

Just a thought - it might be worth having a fixed SSL target time too, so that a site with slow ssl negotiation gets a lower rating.

Hi Patrick,

I am running the private instance in my machine and I face the similar problem discussed in this thread. The target first byte time is the time needed for DNS, socket and SSL negotiations + 100ms, but the value that I see in my results are not matching this formula. Thus, I always see ‘F’ grade for first byte time.

I ran the performance test for the url through and the results can be found at For some reason, I am not seeing the ssl negotiations time in this result. I noticed the target first byte time is not matching the total of breakdown values.

And, I also ran the performance test for the url through private instance and noticed the target first byte time value is not according to the above formula.
Results from the private instance:

First Byte Time (back-end processing): 45/100
846 ms First Byte Time
300 ms Target First Byte Time

Error/Status Code: 200
Start Offset: 0.527 s
DNS Lookup: 30 ms
Initial Connection: 70 ms
SSL Negotiation: 141 ms
Time to First Byte: 78 ms
Content Download: 1057 ms
Bytes In (downloaded): 15.4 KB
Bytes Out (uploaded): 1.5 KB

Also, please correct me if my understanding is wrong.


Redirects count against the first byte time which is probably where the discrepancy is.