Product
Fixing Cookie Inventory without guessing
Stop deleting random cookies from a screenshot. Trace the Cookie signals finding to a tag or Set-Cookie source, fix ownership in GTM or code, and verify on the same public routes.
· by Sam Ortega

Guessing which cookie to delete from a cropped DevTools screenshot is how launch week grows a second launch week. The client asks why a tracker returned. Nobody owns the GTM container. The portal goes quiet. Process that survives handoff starts with the finding, not with folklore about _ga.
SlaySlop's Cookie signals check "Inventories public cookie and tracking signals observed by the scan." Fixing without guessing means treating that inventory as a ticket source: route, signal, owner, verify.
Outcome you want
After the fix, a clean-browser pass on the same public URLs no longer shows the unexpected cookie or tracking signal, or the signal is intentional and documented in the cookie policy the client approved. Consent controls and privacy links still make sense beside the new inventory. You can say that on a call without sweating through your headset.
Uptime can stay green the whole time. Quality is the embarrassing part. Keep them separate in the status email.
Boundaries before you edit
Cookie signals is one Legal check. Consent controls reviews visible analytics and cookie consent signals. Privacy policy and Terms page cover discoverable legal documents. Closing an inventory item does not retire those.
SlaySlop is read-only. It does not edit your site. Only scan and change hosts you own, manage, or have permission to assess. An inventory pass is not legal advice and not a pentest. Use findings as public-surface hygiene with evidence, then fix in your tag manager, CMP, or codebase.
Loading diagram.
Happy path: map, change, verify
- Open the route named in the finding in a fresh profile.
- Reproduce the cookie or tracking request before you touch config.
- Identify the source: first-party response header, inline script, tag manager tag, embedded vendor iframe.
- Change one owner system at a time.
- Hard-refresh in a clean profile and confirm the signal is gone or correctly gated behind consent.
- Rescan with SlaySlop on the same URL.
- If the signal is intentional, update the public cookie inventory document so prose and reality match.
# Permissioned: list Set-Cookie names from the document response
curl -sI -L "https://www.example.com/pricing" \
| awk 'BEGIN{IGNORECASE=1} /^set-cookie:/{print}'
# Then confirm the document still answers after your tag change
curl -sI -o /dev/null -w '%{http_code}\n' -L "https://www.example.com/pricing"Headers alone will not catch every document.cookie write. Keep the browser pass. The scanner product crawls in a real browser for the same reason static curl misses client-side behavior. Every finding comes with the evidence that triggered it—use that evidence instead of inventing a vendor from memory.
Pitfalls that create bounce-back tickets
Removing a cookie name in CSS or in a random WordPress plugin while GTM still injects the vendor is cargo cult. Trace the network initiator. If the initiator is a tag you do not recognize, open the container version history before you delete production tags in a panic.
Gating tags in staging only is another classic. Production container publish is a separate action. Agencies that survive launch week treat "published production container" as a checklist row next to "DNS flipped."
Do not "fix" an inventory miss by hiding the cookie policy page. Privacy policy and cookie documents are separate discoverability checks. Making the mismatch harder to read is not a fix. Do not rename the cookie in hope the inventory stops caring either—observe again after the real source change.
Ownership map that prevents thrash
Write the owner beside each unexpected signal before anyone edits production:
- First-party session cookie from the app repo → eng
- Marketing pixel from GTM → marketing ops
- CMP essential cookie → CMP admin
- Embedded third-party iframe → the feature owner who insisted on the embed
Handoffs fail when everyone can edit GTM and nobody is on-call for it. One named owner per signal beats a Slack thread with six thumbs-up emoji and no deploy.
Rescan discipline
Do not close the portal row on a staging rescan when production was the finding host. Match scheme, host, and path family. If the finding was on /pricing, rescan /pricing. Broad homepage-only rescans miss tag conditions that only fire on landing templates.
When the inventory is clean and intentional vendors remain, say that plainly in the client note. Clean does not mean empty. Empty can be wrong for a marketing site that promised analytics after consent. The goal is an honest public inventory, not a trophy zero.
What to tell the client
"We inventoried public cookie and tracking signals on these routes, removed or gated X, documented Y, and rescanned." Attach routes. Attach owners. Soft product mention only when it helps: SlaySlop keeps the finding linked to the page and can keep scanning after handoff so a new pixel does not arrive silently. Glossary: Cookie signals.