Shows the Post ID of each of your ads inline in Meta Ads Manager, ready to copy. Free, no account, no servers.
Users
142
+101 in 30 days
Rating
5.0 / 5
unchanged in 30 days
Ratings
2
0 in 30 days
Store rank
#73K
#62K among extensions
Version
0.1.0
updated 21 Aug 2026
Users
monthly, 2 months
Latest, 17 Oct 2026:142 usersMove the mouse over the chart for any month
Ratings count
monthly, 2 months
Latest, 17 Oct 2026:2 ratingsMove the mouse over the chart for any month
The Chrome Web Store rounds user counts down to the leading digit, so the user line moves in steps. The ratings count is exact and is the better signal of real adoption.
About AdLupa — Post ID for your ads
Meta Ads Manager already loads the Post ID of your ads and never shows it in the table. To
read one today you open the ad, switch to edit mode, open the creative as a Facebook post,
and copy the ID out of the URL. Four steps, one ad at a time.
That ID is what the "Use existing post" field asks for. When you duplicate an ad and point
it at the existing post, the comments, likes and shares keep stacking on one single
publication instead of restarting at zero on every copy. Meta supports that flow natively.
It just doesn't show you the ID anywhere.
AdLupa puts it in the table.
HOW TO USE IT
1. Install it and open the Ads tab of Ads Manager.
2. Scroll the table. A badge with the Post ID appears next to each ad name as the page
loads its data.
3. Click the badge to copy. Ctrl+Click (Cmd+Click on Mac) adds ads to a selection so you
can copy many at once.
4. Click the toolbar icon for the popup, which is where the rest lives: the on/off switch at
the top (the word beside it reads "Active" or "Off"), "Show panel", "Export CSV", "Copy
all" and "Clear data".
WHAT ELSE IS IN THERE
- Right-click a badge for the rest: copy "name + Post ID", select or deselect the ad for a
bulk copy, or open the post on facebook.com.
- While ads are selected, a bar appears on the page with the count ("N selected"), a "Copy
selected" button that copies every selected Post ID, one per line, and a "Clear selection"
button that deselects them all.
- A floating panel lists the Post IDs stored for the current ad account, with a search box
and buttons to copy them all, export them, or clear the list. It is opened from the "Show
panel" button in the popup, and it closes either from that same button or from its own
"Close" button in the panel header.
- Export to CSV: ad ID, ad name, Post ID, full ID and post URL.
- The toolbar icon shows how many Post IDs are stored for the ad account open in that tab.
- An on/off switch at the top of the popup. The word beside it reads "Active" or "Off";
screen readers announce it by its accessible name, "Extension on". What it governs is what
gets drawn on the page: off means no badges, no panel, no counter — handy when you are
sharing your screen with a client. It keeps reading and storing in the background, so the
IDs are there the moment you switch it back on.
- "Export CSV", "Copy all" and "Clear data" keep working while the switch is off, because
they act on what is already stored and draw nothing on the page. "Show panel" is the one
that does not: the panel is on-screen UI, and that is what the switch turns off.
- The badges follow the light or dark theme of Ads Manager itself, measured from the actual
background colour behind the badge rather than guessed from the page's markup. Only when
that background is transparent all the way up does it fall back to the colour scheme the
page declares, and to your system setting when that scheme leaves the choice to the
system.
- A hidden diagnostics block: five clicks on the version number at the foot of the popup
reveal a "Debug logs" toggle and a "Copy diagnostics" button. The report goes to the
clipboard and nothing is sent anywhere. It exists for support, not as a feature.
- The cache is kept separately per ad account, so two accounts never mix.
- Interface in English, Spanish, Portuguese and French. It follows your browser language by
default, and its own selector lets you pin any of the four.
About the format: Meta stores the ID as pageId_postId. The badge shows and copies the part
after the underscore, which is what "Use existing post" expects. The CSV and the Facebook
link carry the full ID, because that is the form that resolves on facebook.com.
WHAT MAKES IT DIFFERENT
- Free. No account, no sign-up, no login, no payment, no license key, no usage limits.
- No backend. There is no server for this project, so there is nothing to sign up to and
nothing to shut down.
- No analytics, no telemetry, no crash reporting, no "anonymous usage statistics".
- One permission: storage. No host permissions — the only site access it has comes from its
content scripts, and they are limited to the /adsmanager/ path of three domains. That is
the access Chrome lists when you install it, and Chrome's install prompt names the whole
domains, because it drops the path from the pattern; the scripts still only run under
/adsmanager/.
- The published code is neither minified nor obfuscated, so anyone can read exactly what it
does.
DATA: WHAT IT READS AND WHERE IT KEEPS IT
While you have an Ads Manager tab open, and only there, this extension reads content from
that page. Specifically:
- What it reads: the ad ID, the ad's story ID (effective_object_story_id, falling back to
object_story_id) and the ad name.
- How it reads it: passively, from data the page has already loaded on its own. It inspects
<script type="application/json"> blocks already present in the HTML, and it wraps the
page's own fetch and XMLHttpRequest in order to read responses Ads Manager itself already
requested. It only looks at responses whose URL contains graph.facebook.com, /api/graphql
or /adsmanager/. It does not modify any request or response, and it never issues a request
of its own.
- Where it keeps it: in chrome.storage.local, on your own computer, grouped by ad account.
A record expires 30 days after it was last saved, so no record outlives the last time you
saw that ad by more than 30 days, and there is a cap of 5,000 records per ad account.
chrome.storage.sync is not used, so nothing syncs to your Google account.
- Where it sends it: nowhere. Not to us, not to third parties, not to Meta's Graph API. The
one exception is started by you, with a click: the "Open on Facebook" menu item opens
https://www.facebook.com/<full ID> in a new tab, exactly like clicking a link.
- What the on/off switch changes here: the switch sits at the top of the popup and reads
"Active" or "Off" (its accessibl…