Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →To edit a site’s local storage, open that site in your browser, launch DevTools, select the site’s origin in the storage inspector, and change a key or value. In Chrome and Edge, use the Application tool; in Firefox, use Storage Inspector. Double-click an existing cell to edit it, add a row with the browser’s add control, and delete selected rows with the documented delete command. Chrome explicitly tells you to refresh after editing; Edge and Firefox documentation does not establish one universal refresh rule, so reload only when the site needs it.
What local storage is—and what changing it can (and cannot) do
Local storage is a browser-managed collection of persistent key/value pairs associated with a site origin (scheme, host, and port). A site can read those values with JavaScript, and the data normally remains across browser sessions. Typical uses include UI preferences, onboarding state, feature flags, and cached identifiers.
Editing a value changes the copy stored in your browser. It does not change the site’s database, another user’s browser, or server-side account data. The website may validate, overwrite, ignore, or remove your edited value. A refresh can make the page read the new value, but the result depends on the site’s application logic. Work only on sites and accounts you are authorized to test.
Before you edit: identify the correct origin
- Open the exact page whose storage you intend to inspect.
https://example.com,http://example.com, and a different subdomain are different origins. - Keep the target tab active when opening DevTools so the storage panel starts on the expected page.
- Record the original key and value if you may need to restore them. Local storage edits are immediate and there is usually no undo history.
- Expect values to be strings. A value that looks like JSON, a number, or a boolean is still stored as text and must use the syntax the site expects.
Chrome: edit local storage in the Application panel
Open the site’s local-storage table
- Open the website you want to inspect.
- Open DevTools (for example, with the browser menu’s developer-tools command or the keyboard shortcut for your operating system).
- Select the Application tool. If it is hidden, open the DevTools tool-overflow menu and choose it.
- In the left sidebar, expand Storage, expand Local Storage, and select the site’s domain.
The main pane shows rows with Key and Value columns. Check the selected domain before changing anything; selecting a nearby origin edits a different storage area.
Recommended Free Tools
#1 Best Overall
Edit an existing key or value
- Double-click the key cell or value cell you want to change.
- Enter the replacement text and confirm the edit (usually with Enter or by clicking elsewhere).
- Refresh the page to apply the change. Chrome’s guide explicitly documents this refresh step.
If the page still behaves the same, the application may have already copied the old value into memory, may validate the value, or may overwrite it during startup. Inspect the value again after the refresh to see whether it remained changed.
Add, delete, or clear entries
- Add: double-click an empty area of the table, then enter a key and its value.
- Delete one: select the row and press Delete.
- Clear everything for the selected origin: use the table’s Clear all command. This removes every local-storage entry for that origin, not just the row you were viewing.
Use the Console when a table edit is inconvenient
Open the Console tool in the same DevTools window. The Console runs JavaScript in a page context, so you can inspect or change storage directly:
// List all keys and values
Object.entries(localStorage)
// Read one value
localStorage.getItem('settings')
// Set a value (all values are stored as strings)
localStorage.setItem('settings', '{"theme":"dark"}')
// Add a simple flag
localStorage.setItem('onboardingComplete', 'true')
// Remove one key
localStorage.removeItem('onboardingComplete')
// Remove every local-storage entry for this origin
localStorage.clear()
If the desired domain differs from the displayed page, use the Console’s JavaScript-context selector and choose the correct frame or origin before running a command. A command executed in the wrong context changes the wrong storage area (or appears to do nothing).
Microsoft Edge: use the Application tool
Navigate to the origin
- Open the target page and launch DevTools.
- Open the Application tool.
- Expand Local Storage and select the required domain.
Edge presents the same key/value-style table. Double-click a Key or Value cell, enter the new text, and commit the edit.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Scan for outdated or missing drivers - takes under a minute3Clear out junk files and repair common Windows errorsAdd and remove data
- Add: double-click empty table space and enter the new key/value pair.
- Delete one: select the row and press Delete, or use Delete Selected.
- Delete all: choose Clear All for the selected origin.
For Console commands, select the JavaScript context that owns the storage. Edge’s documentation does not establish a single refresh requirement for every edit. Reload if the page reads storage only during startup, then verify that the value was not rewritten.
Rank #2
Firefox: use Storage Inspector
Open the storage view
- Open the target page and launch Firefox Developer Tools.
- Choose Storage Inspector.
- Select the origin’s Local Storage entry in the storage tree.
The table lists keys and values for that origin. Double-click a cell to edit its text, then commit the change.
Add or delete a row
- Add: click the + button and enter the key and value.
- Delete: open the row’s context menu and choose the delete action, or select the row and press Delete or Backspace.
The documented Firefox workflow does not state a universal refresh instruction. Reload when the application only reads local storage during page initialization, and check the table afterward to confirm the site did not replace your value.
Browser differences at a glance
| Browser | Storage interface and path | Add an entry | Delete or clear | Refresh explicitly documented? |
|---|---|---|---|---|
| Chrome | Application > Storage > Local Storage > domain | Double-click empty table area | Delete selected row; Clear all | Yes; Chrome says to refresh after editing |
| Microsoft Edge | Application > Local Storage > domain | Double-click empty table area | Delete or Delete Selected; Clear All | Not established as a universal rule |
| Firefox | Storage Inspector > origin’s Local Storage | Plus (+) button | Context menu, Delete, or Backspace | Not established as a universal rule |
Editing safely: formats, scope, and persistence
Keep the value’s expected format
Many applications store serialized JSON in one value. For example, replacing {"theme":"light"} with dark may cause a JSON parse error. Preserve quotation marks, braces, capitalization, and required fields. If you use the Console, JSON.stringify() helps create valid JSON:
const settings = JSON.parse(localStorage.getItem('settings') || '{}');
settings.theme = 'dark';
localStorage.setItem('settings', JSON.stringify(settings));
Understand origin and frame scope
Storage is tied to the selected origin. A page embedded in an iframe can have a different origin from the top-level page, and a different protocol or subdomain has its own storage. Always select the exact origin in the sidebar or Console context.
Back up before destructive changes
For a small change, copy the original value into a text file. For a broader inspection, run JSON.stringify(Object.fromEntries(Object.entries(localStorage))) in the Console and save the output. To restore a saved object, parse it and write each pair back:
const backup = JSON.parse('PASTE_YOUR_SAVED_JSON_HERE');
for (const [key, value] of Object.entries(backup)) {
localStorage.setItem(key, String(value));
}
Do not paste untrusted code into DevTools. Treat any script supplied by someone else as executable software.
Troubleshooting common failures
The storage entry is missing
Confirm that you selected Local Storage, not Cookies or Session Storage, and that the protocol, host, port, and subdomain match the page. Some sites do not create a key until you visit a particular screen or change a setting.
Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchPC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11The edit appears but the page ignores it
Reload the page, especially in Chrome. Then check whether the application expects JSON, a particular spelling, or a related key. The site may use cookies, IndexedDB, server state, or an in-memory copy instead of the value you changed.
The value reverts immediately
A startup routine, synchronization process, or validation rule may be rewriting it. Watch the table while reloading and inspect Console errors. If the application owns the value, DevTools cannot force it to persist.
Console commands affect the wrong site
Choose the correct JavaScript execution context before calling localStorage. Frames and origins have separate contexts. Verify with location.origin, then compare that string with the origin selected in the storage panel.
DevTools has no Application or Storage Inspector tab
Open the tool-overflow menu and enable the hidden panel. Browser channels and DevTools layouts vary, but the storage functionality remains under Application in Chromium browsers and Storage Inspector in Firefox.
Free tools Windows power users keep installed
One-click scans. No signup required.
The site logs you out or breaks
You may have removed a token, session preference, or migration marker. Restore the backed-up value, or clear the site’s data and sign in again if that is appropriate. Never publish or share authentication tokens copied from local storage.
When a local-storage edit is the wrong tool
Local storage is client-side state. It cannot authorize an account action that the server rejects, alter another device, bypass a server-side permission check, or reliably change data that the site recomputes. For testing, use a staging account and document the original and replacement values. For production support, prefer the site’s own settings or an approved administrative interface.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Or skip the browser setup
If your real goal is to capture the page after a state change—or to automate screenshots rather than inspect storage manually—ScreenshotNeo provides a website screenshot API and MCP server. After you set the page state in an authorized environment, one GET request returns a PNG, JPEG, WebP, or PDF. Its cleanup steps accept cookie or consent banners and remove more than 60 known consent platforms, newsletter popups, and chat widgets before capture; each step can be disabled.
Only clean shots are billed. Bot checks or CAPTCHAs, blank pages, timeouts, failed loads, and cache hits cost nothing, and the response identifies the result with X-Page-Verdict and X-Billed headers. An MCP server exposes take_screenshot, get_page_info, and capture_pdf to Claude, Cursor, and other MCP clients.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
cURL
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
Python
import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)
Node.js
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
See the complete parameter list and MCP setup in the ScreenshotNeo documentation. Options include full-page lazy-image loading, CSS-selector element capture, dark mode, device presets and custom viewports, retina scale, PDF paper and page controls, custom CSS or JavaScript, clicks, selector or network-idle waits, request blocking, headers, cookies, user agent, authorization, timezone, geolocation, transparent backgrounds, resizing, selectable cache TTLs, signed image links, asynchronous webhooks, bulk capture of up to 100 URLs per call, usage reporting, and an OpenAPI specification.
Best Value
The Free plan includes 1,000 screenshots per month with no card. Paid plans start at $5 for 3,000 shots; yearly billing gives two months free, and every feature is available on every plan. Create your free ScreenshotNeo account to try it.
Frequently Asked Questions
Does changing local storage change the website for everyone?
No. The edit changes the selected origin in your browser profile only; server-side data and other devices are unaffected.
Are local-storage values encrypted?
DevTools presents them as ordinary client-side values. Do not treat local storage as a safe place for secrets or credentials.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Can I edit local storage on a phone?
The documented workflows here use desktop Chrome, Edge, and Firefox DevTools. Mobile debugging availability and controls vary by platform.
What should I do before clearing all entries?
Save the original key/value pairs first. Clearing the selected origin can remove preferences, tokens, and application state together.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




