{"id":13611,"date":"2026-10-21T07:35:00","date_gmt":"2026-10-21T05:35:00","guid":{"rendered":"https:\/\/www.lukaswojcik.com\/blog\/?p=13611"},"modified":"2026-10-09T22:56:24","modified_gmt":"2026-10-09T20:56:24","slug":"secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies","status":"publish","type":"post","link":"https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/","title":{"rendered":"Secure, HttpOnly, SameSite: What Twenty Front Pages Attach to Their Cookies"},"content":{"rendered":"<p>A cookie is a short line the server asks a browser to remember and send back. Three optional attributes can be attached to it, each addressing a different security risk.<\/p>\n<p>They cost nothing to add. Measured across twenty large front pages, two of the three are common and the third is missing more often than it is present &#8211; and it is the one that matters once something has already gone wrong.<\/p>\n<figure class=\"lw-diagram\">\n<img decoding=\"async\" src=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/diagrams\/cookie-flags-en.png\" width=\"1120\" height=\"580\" loading=\"lazy\" alt=\"Twelve of twenty front pages setting no cookie, twenty-nine cookies on the rest, and to scale how many of them carry Secure, SameSite and HttpOnly\"><figcaption>Of 29 cookies: 23 carried Secure, 17 SameSite, 12 HttpOnly.<\/figcaption><\/figure>\n<h2>Three words, three different dangers<\/h2>\n<p><code>Secure<\/code> means the cookie travels only over an encrypted connection. Without it, a single request over plain HTTP &#8211; a mistyped address, an old bookmark, a link in an email &#8211; hands the value to anyone listening on the same network.<\/p>\n<p><code>HttpOnly<\/code> means scripts in the browser cannot read the cookie. It exists for the case where a page ends up running code nobody intended: an injected script, a compromised third-party library, a bad advert. Without this word, such code reads the session cookie in a single line.<\/p>\n<p><code>SameSite<\/code> controls whether the cookie is sent along when the request comes from a different site. It is the defence against a hidden form on a foreign page carrying out an action in the name of whoever happens to be logged in.<\/p>\n<p>Three doors, and none of the three helps with what the other two guard.<\/p>\n<h2>What was measured<\/h2>\n<p>Twenty large front pages were opened once each on 2 September 2026, following redirects, accepting nothing and clicking nothing. All twenty answered with status 200.<\/p>\n<p>Counted was every <code>Set-Cookie<\/code> line exactly as it arrived: the cookies set before any consent, which is precisely the set a visitor collects by doing nothing at all.<\/p>\n<p>What a consent banner adds afterwards is a separate question and a much larger number. This is the floor, not the ceiling.<\/p>\n<h2>Twelve of twenty set nothing<\/h2>\n<p>The largest single group in the measurement sets no cookie whatsoever on a first visit: twelve of the twenty.<\/p>\n<p>Those are mostly project and documentation sites &#8211; the kind of page that shows text and has nothing to remember. It deserves stating plainly, because the flags only become a question after the decision to set a cookie has been taken, and that decision is skipped more often than any of the three words is used.<\/p>\n<p>The remaining eight sites set 29 cookies between them, ranging from a single one to ten on a single page.<\/p>\n<figure class=\"lw-illu\">\n<img decoding=\"async\" src=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/illustrationen\/illu-cookie-flags.webp\" width=\"1120\" height=\"580\" loading=\"lazy\" alt=\"A row of small containers with seals on their lids; one stands open with its lid lifted off\"><br \/>\n<\/figure>\n<h2>Secure is the rule, HttpOnly the exception<\/h2>\n<p>Of those 29 cookies, 23 carried <code>Secure<\/code>, 17 carried <code>SameSite<\/code> and 12 carried <code>HttpOnly<\/code>.<\/p>\n<p>The ranking is no accident. <code>Secure<\/code> is close to automatic by now: browsers have pushed it for years, and frameworks add it by default on an encrypted site. <code>SameSite<\/code> arrived with a default value, so a cookie without the word is treated as though it had asked for the middle setting &#8211; the word is often absent while the protection is not.<\/p>\n<p><code>HttpOnly<\/code> has no such default. A cookie without it is readable by every script on the page, and nothing supplies the word unless somebody writes it.<\/p>\n<h2>Three cases in detail<\/h2>\n<p>Wikipedia set the most and guarded them best: ten cookies, every single one <code>Secure<\/code>, six of them <code>HttpOnly<\/code>. Only four carried <code>SameSite<\/code>, which fits the pattern above exactly.<\/p>\n<p>The New York Times set nine, and not one of them was <code>HttpOnly<\/code>. Five were <code>Secure<\/code> and five carried <code>SameSite<\/code>, so the protections that stop a cookie leaving by the wrong route were partly in place, while the one that stops a script reading it was absent altogether.<\/p>\n<p>And two sites set a single cookie carrying none of the three words: apple.com and php.net. One cookie each, no encryption requirement, readable by any script, sent along from anywhere.<\/p>\n<h2>What a missing HttpOnly actually costs<\/h2>\n<p>The three words are not equally replaceable.<\/p>\n<p>Without <code>Secure<\/code>, a cookie leaks on an unencrypted request &#8211; and on a site that redirects everything to HTTPS and sends a strict transport header, that request largely does not happen.<\/p>\n<p>Without <code>SameSite<\/code>, the browser applies its own default, which blocks the worst case unaided.<\/p>\n<p>Without <code>HttpOnly<\/code>, nothing steps in. The cookie is readable by any code running on the page, and code running on a page is not a rare event: it is the ordinary outcome of one third-party script being compromised somewhere far away from the site that embedded it.<\/p>\n<p>Which is why the ranking measured here runs the wrong way round. The word added least often is the one nothing else covers.<\/p>\n<div class=\"lw-faq\">\n<h2>Questions and answers<\/h2>\n<h3>Can every cookie be set with HttpOnly?<\/h3>\n<p>No. HttpOnly means no script can read the cookie, which rules out every cookie that exists for a script: the consent state a banner script has to read on the next page view, or the identifier an analytics tool writes and reads in the browser itself.<\/p>\n<p>A script also cannot set HttpOnly at all. Cookies created by a script through <code>document.cookie<\/code> are also not set by a header, so they never appear in a Set-Cookie line and were not among those counted in the article; for them the question does not arise.<\/p>\n<p>For everything only the server needs, the opposite holds: session and login cookies are read by no script, and there is no reason to go without HttpOnly for them. A workable rule of thumb is therefore that whatever the server sets and no script on the page reads gets HttpOnly.<\/p>\n<h3>Is a site with an HttpOnly session cookie safe from an injected script?<\/h3>\n<p>Only partly. HttpOnly stops a script from reading the value and carrying it off to use the session elsewhere later. It does not stop the script from acting inside the page: the browser automatically attaches the cookie to requests the script sends from there, so it can do anything the logged-in person is currently allowed to do, for as long as the page is open.<\/p>\n<p>HttpOnly therefore limits the damage rather than preventing it. Other measures work against the injected script itself, such as a Content Security Policy that defines where scripts may come from, and a sparing choice of third-party scripts.<\/p>\n<h3>Why do cookies with SameSite=None practically always carry Secure as well?<\/h3>\n<p>Because Chrome and the other Chromium-based browsers have refused to accept a cookie with SameSite=None but without Secure since 2020. A cookie explicitly released for requests from other sites therefore has to be restricted to encrypted connections.<\/p>\n<\/div>\n<div class=\"lw-quellen\">\n<h2>Sources<\/h2>\n<ul>\n<li><a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/HTTP\/Reference\/Headers\/Set-Cookie\" target=\"_blank\" rel=\"noopener noreferrer\">MDN: Set-Cookie<\/a><\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Three words can be added to any cookie, each guarding against a different danger. Measured across twenty large front pages, two of them are common and the third is missing more often than it is there.<\/p>\n","protected":false},"author":1,"featured_media":16142,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[120],"tags":[91279,91219,91115],"class_list":["post-13611","post","type-post","status-publish","format-standard","hentry","category-tutorials-en","tag-prywatnosc-danych-pl","tag-tutorial","tag-web-security"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Secure, HttpOnly, SameSite: What Twenty Front Pages Attach to Their Cookies | Lukas Wojcik<\/title>\n<meta name=\"description\" content=\"What Secure, HttpOnly and SameSite each protect against, how often twenty large sites actually set them, and why the one that is missing most is the one that helps against a script already running.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Secure, HttpOnly, SameSite: What Twenty Front Pages Attach to Their Cookies | Lukas Wojcik\" \/>\n<meta property=\"og:description\" content=\"What Secure, HttpOnly and SameSite each protect against, how often twenty large sites actually set them, and why the one that is missing most is the one that helps against a script already running.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/\" \/>\n<meta property=\"og:site_name\" content=\"Lukas Wojcik - Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-21T05:35:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-13611-cookie-flags-measured-nz.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Lukas Wojcik\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Lukas Wojcik\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/data-privacy\\\/tutorials-en\\\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/data-privacy\\\/tutorials-en\\\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\\\/\"},\"author\":{\"name\":\"Lukas Wojcik\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"headline\":\"Secure, HttpOnly, SameSite: What Twenty Front Pages Attach to Their Cookies\",\"datePublished\":\"2026-10-21T05:35:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/data-privacy\\\/tutorials-en\\\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\\\/\"},\"wordCount\":1056,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/data-privacy\\\/tutorials-en\\\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/hero-13611-cookie-flags-measured-nz.png\",\"keywords\":[\"Data Privacy\",\"Tutorial\",\"Web Security\"],\"articleSection\":[\"Tutorials\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/data-privacy\\\/tutorials-en\\\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/data-privacy\\\/tutorials-en\\\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\\\/\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/data-privacy\\\/tutorials-en\\\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\\\/\",\"name\":\"Secure, HttpOnly, SameSite: What Twenty Front Pages Attach to Their Cookies | Lukas Wojcik\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/data-privacy\\\/tutorials-en\\\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/data-privacy\\\/tutorials-en\\\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/hero-13611-cookie-flags-measured-nz.png\",\"datePublished\":\"2026-10-21T05:35:00+00:00\",\"description\":\"What Secure, HttpOnly and SameSite each protect against, how often twenty large sites actually set them, and why the one that is missing most is the one that helps against a script already running.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/data-privacy\\\/tutorials-en\\\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/data-privacy\\\/tutorials-en\\\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/data-privacy\\\/tutorials-en\\\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/hero-13611-cookie-flags-measured-nz.png\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/hero-13611-cookie-flags-measured-nz.png\",\"width\":1200,\"height\":630,\"caption\":\"Secure, HttpOnly, SameSite: What Twenty Front Pages Attach to Their Cookies\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/data-privacy\\\/tutorials-en\\\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Secure, HttpOnly, SameSite: What Twenty Front Pages Attach to Their Cookies\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\",\"name\":\"Lukas Wojcik - Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\",\"name\":\"Lukas Wojcik\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"width\":424,\"height\":636,\"caption\":\"Lukas Wojcik\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\"},\"sameAs\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Secure, HttpOnly, SameSite: What Twenty Front Pages Attach to Their Cookies | Lukas Wojcik","description":"What Secure, HttpOnly and SameSite each protect against, how often twenty large sites actually set them, and why the one that is missing most is the one that helps against a script already running.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/","og_locale":"en_US","og_type":"article","og_title":"Secure, HttpOnly, SameSite: What Twenty Front Pages Attach to Their Cookies | Lukas Wojcik","og_description":"What Secure, HttpOnly and SameSite each protect against, how often twenty large sites actually set them, and why the one that is missing most is the one that helps against a script already running.","og_url":"https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/","og_site_name":"Lukas Wojcik - Blog","article_published_time":"2026-10-21T05:35:00+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-13611-cookie-flags-measured-nz.png","type":"image\/png"}],"author":"Lukas Wojcik","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Lukas Wojcik","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/#article","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/"},"author":{"name":"Lukas Wojcik","@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"headline":"Secure, HttpOnly, SameSite: What Twenty Front Pages Attach to Their Cookies","datePublished":"2026-10-21T05:35:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/"},"wordCount":1056,"commentCount":0,"publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-13611-cookie-flags-measured-nz.png","keywords":["Data Privacy","Tutorial","Web Security"],"articleSection":["Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/","url":"https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/","name":"Secure, HttpOnly, SameSite: What Twenty Front Pages Attach to Their Cookies | Lukas Wojcik","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/#primaryimage"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-13611-cookie-flags-measured-nz.png","datePublished":"2026-10-21T05:35:00+00:00","description":"What Secure, HttpOnly and SameSite each protect against, how often twenty large sites actually set them, and why the one that is missing most is the one that helps against a script already running.","breadcrumb":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/#primaryimage","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-13611-cookie-flags-measured-nz.png","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-13611-cookie-flags-measured-nz.png","width":1200,"height":630,"caption":"Secure, HttpOnly, SameSite: What Twenty Front Pages Attach to Their Cookies"},{"@type":"BreadcrumbList","@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/data-privacy\/tutorials-en\/secure-httponly-samesite-what-twenty-front-pages-attach-to-their-cookies\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.lukaswojcik.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Secure, HttpOnly, SameSite: What Twenty Front Pages Attach to Their Cookies"}]},{"@type":"WebSite","@id":"https:\/\/www.lukaswojcik.com\/blog\/#website","url":"https:\/\/www.lukaswojcik.com\/blog\/","name":"Lukas Wojcik - Blog","description":"","publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.lukaswojcik.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9","name":"Lukas Wojcik","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","width":424,"height":636,"caption":"Lukas Wojcik"},"logo":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg"},"sameAs":["https:\/\/www.lukaswojcik.com\/blog"]}]}},"_links":{"self":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/13611","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/comments?post=13611"}],"version-history":[{"count":3,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/13611\/revisions"}],"predecessor-version":[{"id":21982,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/13611\/revisions\/21982"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media\/16142"}],"wp:attachment":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media?parent=13611"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/categories?post=13611"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/tags?post=13611"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}