Free · No login · No plugin

WordPress Post & Page ID Finder

Paste any WordPress URL and get its post ID or page ID in seconds. Powered by the WordPress REST API — look up one link or up to 1000 at once, then export to CSV.

0 URLs
Processing… 0 / 0

Queries the site's WordPress REST API (enabled by default since WP 4.7). If your browser blocks the direct call, the tool retries through a public CORS proxy (corsproxy.io), which can see the URL you looked up.

Saved lists 0 saved

    Nothing saved yet. Save a list to reuse it later — it stays in this browser only, never on our servers.

    Ctrl+Enter find IDs · Alt+R clear everything

    Everything you need to find a WordPress ID

    A fast, private, browser-based way to look up WordPress post and page IDs — built for developers, agencies, and site owners who work with Elementor, custom queries, and shortcodes.

    Instant lookup by URL

    Paste a URL, get the numeric ID. No digging through the WordPress admin, no hovering over “Edit” links to read the query string.

    Bulk post ID lookup

    Paste up to 1000 WordPress URLs at once and the tool works through every post and page ID in one run — with a Stop button if you change your mind.

    CSV export

    Download all URLs, IDs, types, and statuses as a clean CSV for spreadsheets, audits, or migrations.

    One-click edit links

    Every found item gives you direct “WP Editor” and “Elementor” links that open the correct post straight from the ID.

    No plugin, no login

    Nothing is installed on your site and no account is required. The lookup runs in your browser against the public REST API.

    Works on any WP site

    Any public WordPress site with the REST API enabled — your own sites or client sites you're auditing.

    What is a WordPress post or page ID?

    Every piece of content in WordPress — every post, page, attachment, and custom post type — is stored in the database with a unique numeric identifier called its ID. A URL like example.com/?p=482 or an editor link like /wp-admin/post.php?post=482&action=edit is really just pointing at the item whose ID is 482.

    You need that ID constantly when you work with WordPress: to target a specific page in a shortcode, exclude a category or post from a query, build an Elementor template condition, set up a redirect, or reference content through the REST API. Because pretty permalinks hide the ID, finding it usually means opening the admin dashboard and hunting for it. This WordPress post and page ID finder skips that step — give it the public URL and it returns the ID.

    Post ID vs. page ID

    WordPress numbers posts and pages from the same sequence, so an ID is unique across both. The difference is the post type: a blog article is the post type, while a static page (like “About” or “Contact”) is the page type. The tool checks both automatically and tells you which type each ID belongs to.

    Why we built this tool

    This started with a related-posts section. We were hand-picking which articles should appear under each post — deliberate editorial choices about semantic relevance, rather than whatever an algorithm happened to surface. WordPress wanted post IDs. What we had was a list of URLs.

    So the actual work became: open the URL, find the post in wp-admin, hover the row, read the number out of the edit link, type it into the field, move on. For every post, on every page. It's not difficult work — it's just relentless, and it's easy to be off by one digit, which quietly puts the wrong article in the wrong place where nobody notices for months.

    We went looking for something that would take a URL and hand back the ID. We couldn't find one. The plugins wanted to be installed on the site; everything else assumed you were already inside the dashboard, which is exactly where we were trying not to be.

    So we built it. Paste the URLs, get the IDs back, copy them where they need to go. This tool exists because we needed it first — and if you're wiring up related posts, Elementor conditions, or a redirect map, you probably need it too.

    How to find a WordPress post ID by URL

    1. 1

      Copy the URL

      Grab the full address of the WordPress post or page you want the ID for — for example https://example.com/about-us/.

    2. 2

      Paste it into the tool

      Drop one URL per line into the box above. Add as many as you like, up to 1000 at a time for a bulk lookup.

    3. 3

      Click “Find IDs”

      The tool reads each slug, queries the site's REST API, and lists the post or page ID, its type, and a direct edit link. Copy a single ID, copy them all, or export the whole table to CSV.

    Prefer to do it manually? In the WordPress admin, open Posts or Pages, hover over an item, and read the post= number in the status-bar link — or open it in the editor and check the URL. The tool just does this for you from the public URL, in bulk.

    Using the WordPress ID Finder

    A quick reference for every part of the tool — reading your results, exporting them, and fixing the two statuses that aren't “Found”.

    Single lookup

    Paste one WordPress URL into the box and click Find IDs. The tool takes the last part of the URL (the slug), queries the site's REST API for a matching post and then a matching page, and shows the numeric ID with its type.

    Bulk lookup

    Enter one URL per line — up to 1000 at a time. The counter under the box shows how many valid lines it detected. Each row fills in as it is scanned and the progress bar tracks the batch. Lookups run one at a time with a short delay between them, deliberately: it keeps the tool polite to the target server, which is usually your own client's. A full 1000-URL run is a coffee break — press Stop any time and the results so far are kept.

    Reading the results

    • ID — the numeric post or page ID.
    • Typepost for a blog post, page for a static page.
    • StatusFound, Not found, or Blocked.
    • Edit — copy the ID, or open it in the WP editor or Elementor.

    Retrying failures

    When a run finishes with any Not found or Blocked rows, a Retry failed button appears. It re-runs only those URLs and leaves your successful results untouched — worth a click, since Blocked is often a temporary proxy or rate-limit hiccup rather than a permanent one.

    Saved lists

    Name the URLs in the box and hit Save URLs to keep them for later — useful when you re-audit the same client site every month. Click a saved list to load it back into the box, or the bin icon to delete it. Lists live in this browser's localStorage: they survive a refresh, never reach our servers, and won't follow you to another device or survive clearing your browser data.

    Copy & export

    Use Copy on any row to grab a single ID, Copy all IDs to copy every found ID as a newline-separated list, or Export CSV to download the full table (URL, ID, type, status) for spreadsheets, audits, and migrations.

    Edit links

    The WP button opens /wp-admin/post.php?post=ID&action=edit and the Elementor button opens the same post in the Elementor editor. You need to be logged in to that WordPress site for the editor to open.

    Subdirectory installs

    Plenty of WordPress sites don't live at the domain root — a blog at example.com/blog/ or /news/ keeps its REST API at example.com/blog/wp-json/. The tool checks the root first and then the first path segment, so these resolve without you doing anything. Edit links follow the same base, pointing at /blog/wp-admin/ rather than the root.

    Troubleshooting “Not found”

    The REST API answered but had no match for that slug. Common reasons: the content is a draft or private, the slug in the URL differs from the stored slug, or it's a custom post type that isn't exposed to the REST API.

    Troubleshooting “Blocked”

    Both the direct request and the proxy fallback failed. The site has likely disabled its REST API (often via a security plugin) or sits behind aggressive bot protection. If every row is blocked, check the URL host is correct and reachable and that you're online — the public CORS proxy can also be temporarily unavailable.

    Privacy

    The lookup runs in your browser. There is no SerpHammer backend, nothing you paste is stored on our servers, and saved lists stay in this browser's own storage. The URLs go to the target WordPress site's own REST API and — only when a direct call is blocked — to the public corsproxy.io service, which then sees that URL. Only public URLs are ever sent; never credentials.

    Frequently asked questions

    How do I find a WordPress post or page ID from a URL?

    Paste the full URL into the finder at the top of this page and click Find IDs. The tool reads the slug from the URL, queries the site's WordPress REST API, and returns the numeric post or page ID within seconds — no login or plugin required.

    Does this WordPress ID finder work on any website?

    It works on any public WordPress site with the REST API enabled, which is the default since WordPress 4.7. Sites that fully disable the REST API through a security plugin, or that sit behind aggressive bot protection, may return a Blocked status.

    Is the WordPress Post & Page ID Finder free?

    Yes — it's completely free, needs no sign-up, and runs entirely in your browser. Look up a single URL or paste up to 1000 at once and export the results as CSV.

    What's the difference between a post ID and a page ID?

    Both are unique numeric identifiers WordPress assigns to content. A post ID belongs to a blog post (post type post); a page ID belongs to a static page (post type page). They share one numbering sequence, so the tool checks both and reports which type it found.

    Why does a URL come back as Blocked?

    Blocked means both the direct request and the proxy fallback failed. Usually the site has disabled its REST API — often through a security plugin — or sits behind a firewall or bot protection that rejects automated requests. If every row is blocked, check that the host is correct and reachable and that you are online, since the public CORS proxy the tool falls back to can also be temporarily unavailable.

    Is my data private?

    The lookup runs entirely in your browser. There is no SerpHammer backend, nothing you paste is stored on our servers, and your lookups are not tracked. One exception is worth knowing: when a WordPress site blocks a direct browser request, the tool retries through a public CORS proxy (corsproxy.io), so that URL is visible to that third-party service. Only the public URL is ever sent — never any credentials, because the lookup uses the site's public REST API.

    Find your WordPress IDs now

    Paste a URL, get the ID. Free, instant, and no plugin to install.

    Open the ID Finder