How to Find Your ESPN Fantasy Cookies
ESPN Fantasy requires a manual cookie-based setup. This guide shows you how to find the espn_s2 and SWID values in Chrome, Firefox, and Safari.
Why do I need to do this manually? Why isn't there a one-click login?
ESPN Fantasy does not offer a public OAuth API for third-party apps. The cookie-based method is the only way to access private league data without ESPN's direct partnership. Yahoo, by contrast, has an official API that allows proper OAuth integration.
How long do ESPN cookies last?
ESPN session cookies can expire anywhere from a few days to a few weeks depending on your browser settings and activity. If your War Room ESPN connection stops returning data, simply repeat the steps above to get fresh cookie values and reconnect.
Is it safe to share my ESPN cookies with War Room?
Your cookie values are encrypted before being stored in our database. They are never logged to our server console and never returned to the browser after the initial connection. We use them only to read your ESPN league data — the same way ESPN's own website does. You can disconnect and permanently remove your stored values from the account page at any time.
I can't find the espn_s2 cookie. What should I try?
Make sure you are logged in to ESPN before opening DevTools. The espn_s2 cookie is only present when you have an active ESPN session. Try refreshing the page after logging in, then re-check the cookies list. Also ensure you are looking at cookies for espn.com — not just the current page's domain.
My SWID doesn't have curly braces — is that correct?
No. The SWID cookie value should always be in the format {XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX} including the curly braces. If you don't see braces, make sure you're copying the full value and not just part of it. Try double-clicking the value field to select all.
I connected successfully but my team name shows as "—". What happened?
Team name matching in private leagues depends on how ESPN structures the league data. In some leagues the team-to-owner mapping isn't directly available. We extract the league name reliably — team name may show a fallback or require a refresh. This is a known limitation of phase 1 and will be improved.