Cookie converter
Cookies, in whatever format you need them.
Netscape cookies.txt to JSON and back — Cookie-Editor, Puppeteer, key-value, or a raw Cookie header. Paste it and the format is worked out for you.
Runs entirely in your browser. Nothing is uploaded.
The converted cookies will appear here.
How it works
- 01
Paste, drop, or upload
Drop a cookies.txt file onto the panel, paste a JSON export, or paste a raw Cookie header. The file is read by your browser and goes no further.
- 02
The format is worked out
A Netscape file is recognised by its tab layout, Cookie-Editor by its expirationDate and storeId fields, Puppeteer by its expires field. The opposite format is selected for the output.
- 03
Copy or download
Take the result to the clipboard, or download it as cookies.txt or cookies.json. Use the swap button to run the conversion the other way.
The four shapes
Netscape
cookies.txt — curl, wget, yt-dlp
Cookie-Editor
Chrome and Firefox extensions
Puppeteer
Puppeteer and Playwright
Key-Value
requests, axios
Header
Cookie: request header
Questions
A plain text file with one cookie per line and seven tab-separated fields: domain, include-subdomains flag, path, secure flag, expiry, name and value. It was introduced by Netscape Navigator and is still what curl, wget and yt-dlp read and write today.
No. The conversion runs in JavaScript in your browser. There is no upload, no logging and no analytics, and the site ships a Content-Security-Policy with connect-src set to none — so the page is not permitted to make network requests at all. You can confirm that in your browser DevTools.
Cookie-Editor if you are importing back into a browser extension. Puppeteer if you are feeding page.setCookie() or context.addCookies(). Key-value for a requests or axios session. Header if you just need something to paste after curl -H.
That prefix is how curl marks an http-only cookie in a cookies.txt file. It looks like a comment so older readers skip it safely, while curl and yt-dlp understand it. Cookies without the flag are written normally.
Both mean a session cookie — one that dies when the browser closes. Netscape files write 0, Puppeteer writes -1, and Cookie-Editor drops the field and sets session to true instead. All three are read correctly and converted to whichever spelling the target format expects.
They only store names and values. Domain, path, expiry, secure and http-only have nowhere to go. That is fine when you are attaching cookies to a single request, but you cannot convert back to a complete cookies.txt afterwards without supplying a domain.
Yes — that is the most common reason people land here. Export from Cookie-Editor as JSON, paste it in, and the output is a Netscape cookies.txt file you can pass to yt-dlp --cookies or curl -b.