← Hashito System home 日本語 Tools Blog
Input
Result

Paste one or more Set-Cookie lines to see the attribute breakdown and the problems found.

How to read Set-Cookie

Set-Cookie is the response header a server uses to store a cookie in the browser. The format is name=value; attribute; attribute=value. Everything before the first semicolon is the name and value; everything after it is an attribute. Order does not matter. A browser silently drops attributes it does not know, so a misspelled attribute never raises an error, it just stops working. That is why this tool lists unrecognised attributes.

The common trouble is a cookie that you set but the browser never stored. Most of the time the cause is the combination of attributes, not the value. DevTools will tell you the cookie was not stored, but not always which rule it broke.

Main rejection rules

ConditionResult
SameSite=None without SecureNot stored
__Secure- name without SecureNot stored
__Host- name with a DomainNot stored
__Host- name whose Path is not /Not stored
Name plus value over 4096 bytesNot stored (common limit)

How the lifetime is decided

With neither Max-Age nor Expires, the cookie is a session cookie and disappears when the browser closes. When both are present, Max-Age wins. A Max-Age whose value is not an integer is dropped entirely, so Max-Age=1w does not mean one week, it means no expiry at all. This tool always shows which attribute decided the lifetime.

The analysis runs entirely in your browser; nothing you paste is sent to a server. The rules come from RFC 6265 and the later cookie specification work covering SameSite, name prefixes and Partitioned.

Frequently asked questions

My SameSite=None cookie is not stored. Why?

SameSite=None requires Secure. Major browsers reject a SameSite=None cookie that has no Secure attribute. Serve the page over HTTPS and always add Secure.

If I set both Max-Age and Expires, which one wins?

Max-Age wins. RFC 6265 says Max-Age takes precedence when both are present. Sending Expires as well is still common for old clients that do not understand Max-Age.

My cookie stopped working after I added the __Host- prefix.

A __Host- name has three requirements: Secure must be present, Domain must be absent, and Path must be exactly /. Missing any one of them makes the browser reject the cookie. Because Domain is absent, the cookie is not sent to subdomains.

Is the cookie value I paste sent to a server?

No. The analysis runs entirely in JavaScript in your browser. Nothing you paste leaves the page, so pasting a real session id does not expose it.