Compressing resources if a very cost-effective way of improving web performance. As the name suggests, HTTP compression allows content to be compressed on the server before transmission to the client.
As a first rule of thumb, try to compress data when possible. It is especially true for texts in the HTTP body. Depending on the protocol used, HTTP header can also be compressed. Nevertheless, trying to compress already compressed content, like some images formats, can degrade performance. More detailed information can be found here.
Kadiska detects compressed content by comparing the decodedBodySize and encodedBodySize properties of the PerformanceResourceTiming W3C API. decodedBodySize is received from the fetch (HTTP or cache) of the message body, after removing any applied content-codings. encodedBodySize represents the size received from the fetch (HTTP or cache), of the payload body, before removing any applied content-codings.
Compression level is shown as a pourcentage of resources that are compressed vs uncompressed.
This information is available in the "Resources Analysis" section. It can be grouped at different levels:
|Level||Base of pourcentage calculation|
|Pages||% calculated for all resources (hits) that are part of specific pages|
|Resource Type||% calculated for specific resources types|
|Hosts||% calculated for all resources that are delivered by specific hosts|
|Resources||% calculated for specific resources|
|iniator Type||% calculated for resources fetched from specific Initiator Types|