CURLINFO_HEADER_SIZE(3) Library Functions Manual CURLINFO_HEADER_SIZE(3) NAME CURLINFO_HEADER_SIZE - size of response headers SYNOPSIS #include CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_HEADER_SIZE, long *sizep); DESCRIPTION Pass a pointer to a long to receive the total size of all the headers received, represented in HTTP/1-style header format. Measured in number of bytes. The total includes the size of any received headers suppressed by CURLOPT_SUPPRESS_CONNECT_HEADERS(3). The number of bytes transferred over the wire (or to the TLS backend) is different when using HTTP/2 or greater. PROTOCOLS This functionality affects all supported protocols EXAMPLE int main(void) { CURL *curl = curl_easy_init(); if(curl) { CURLcode result; curl_easy_setopt(curl, CURLOPT_URL, "https://example.com"); result = curl_easy_perform(curl); if(result == CURLE_OK) { long size; result = curl_easy_getinfo(curl, CURLINFO_HEADER_SIZE, &size); if(result == CURLE_OK) printf("Header size: %ld bytes\n", size); } curl_easy_cleanup(curl); } } AVAILABILITY Added in curl 7.4.1 RETURN VALUE curl_easy_getinfo(3) returns a CURLcode indicating success or error. CURLE_OK (0) means everything was OK, non-zero means an error occurred, see libcurl-errors(3). SEE ALSO CURLINFO_REQUEST_SIZE(3), CURLINFO_SIZE_DOWNLOAD(3), curl_easy_getinfo(3), curl_easy_setopt(3) libcurl 2026-09-02 CURLINFO_HEADER_SIZE(3)