LinkedIn post forensics
LinkedIn only shows "3d" or "2w" on a post — but the exact publish time is hiding inside the post's own ID. Paste a link and this decodes it, entirely in your browser. Think of it as a LinkedIn post date extractor, minus the sketchy browser extensions and login walls.
This page can't reach into LinkedIn's activity feed by itself — it's login-walled and loads posts dynamically as you scroll, so there's no URL to simply fetch. But you can pull every post's ID and its reaction + comment count straight out of the page yourself:
F12, or Cmd+Option+I on Mac) → Console tab.copy(window.__postmarkIds).)Worth knowing: this works by matching LinkedIn's own accessibility labels (things like "42 reactions" and the hidden "Feed post number N" marker on each post), which is a lot more reliable than guessing at visible text — but LinkedIn can still change that structure at any time. Spot-check a couple of numbers in the console output against what you see on screen before trusting the ranking, and hand-correct any that look wrong before pasting. If a post genuinely never loads, it'll show up flagged as "never fully rendered" rather than silently disappearing — try scrolling near it manually yourself and re-running if that happens.
Leave both blank to grab everything. The script still scrolls the full page either way — the range just filters which posts end up in the copied list.
If this URL points to a reshare, the ID above is the reshare's timestamp, not the original post's. LinkedIn nests the original post's own ID inside a reshare — use that inner URN if you need the original publish time.
| Input | Activity ID | Published (local) | Published (UTC) | Reactions |
|---|
Paste the post's URL into the box above and click Decode. LinkedIn's feed only ever shows a relative label like "3w" or "2mo," but the real publish timestamp is encoded inside the post's own ID — this page reads it straight out of the URL, entirely in your browser, with no login or API needed.
Yes — every LinkedIn post URL contains a long activity ID, and that number is a timestamp in disguise (see "How this actually works" below for the technical details). Postmark decodes it instantly, down to the exact minute, for any public post — not just your own.
Yes, for single-post decoding — anyone's public post URL works, since the timestamp is embedded in the ID itself, not fetched from LinkedIn. The reaction/comment extraction feature is different: that one only works on your own activity page, since it has to be logged in as you to read the data.
Every LinkedIn post gets an activity ID like 7176543210987654321. That number isn't random — it's a Snowflake-style ID, a scheme originally built at Twitter and now common across large platforms. The first 41 bits of the number encode the exact millisecond the post was created; the remaining bits are internal machine and sequence identifiers.
So recovering the timestamp is just a bit shift: timestamp_ms = activity_id >> 22. No login, no API, no scraping — the answer was sitting in the URL the whole time.
The ID lives either in the post's permalink (after -activity-) or in a data-urn attribute on the post element if you're inspecting the page. Nothing you paste here is sent anywhere; the math runs locally in your browser.
Also available as a Chrome extension
Extract reaction & comment counts straight from your own activity page — no console, no copy-pasting.