Is Meta Ads Data Advisor safe?
We analyzed Meta Ads Data Advisor version 5.8.0's actual code and gave it a 58/100 trust score. This is a powerful, purpose-related Meta automation…
Bottom line
This is a powerful, purpose-related Meta automation extension with meaningful privacy and server-control risks.
What it can access
It can inspect pages and screenshots across all websites and use cookies, debugging, tabs, and network monitoring for Meta setup and diagnostics [Q1][Q2][Q6].
Security weaknesses
During setup, Meta can direct clicks, typing, navigation, and form submissions, so a compromised service could misuse powerful browser actions [Q16][Q24].
Signs of misuse
The extension sends page details, URLs, event data, and a persistent identifier to Meta, including some automatic browsing telemetry [Q6][Q13][Q8].
Code findings
What access does this extension ask for, and does that access make sense for what it claims to do?
It requests access to every site plus tabs, scripting, cookies, web navigation, web requests, identity, debugger and broad Google Tag Manager/Analytics OAuth scopes. This is unusually powerful, but it supports the advertised website diagnostics and setup automation rather than proving abuse.
Declares <all_urls> and the storage, scripting, tabs, activeTab, webNavigation, cookies, webRequest, debugger, identity and sidePanel permissions. — manifest.json:10-26
Requests OAuth scopes that can edit and publish Google Tag Manager containers, manage users and edit Google Analytics. — manifest.json:92-101
Which websites can it run on, and can it read or change what appears on those pages?
During a setup run it builds a structured page tree containing page text, element attributes and controls, and it can also capture raw HTML without scripts. It highlights and operates page elements.
Traverses visible page text and elements, copying element attributes, XPath and interaction metadata into a DOM tree. — buildDomTree.iife.js:50
Captures DOM, optional full DOM/raw HTML and screenshots for agentic observations, blocking observations outside the skill URL allowlist. — background.iife.js:1429-1442
Can it see sensitive information you type, such as passwords, payment details, messages, or form entries?
Page observations can contain visible text, element attributes and screenshots, so sensitive information visible on an allowed setup page could reach Meta. The reviewed skills explicitly instruct the agent not to handle third-party login credentials or consent, and no general password or private-message collector was demonstrated.
Serializes visible text and all element attributes for interactive page understanding. — buildDomTree.iife.js:50
Packaged skill instructions make login credentials, OAuth, consent and billing user-only steps and require automation to pause. — background.iife.js:2815-2818, 3103
Can it access private browser data such as cookies, signed-in sessions, browsing history, bookmarks, or downloads?
It reads selected Meta login cookies and tracks the URLs of tabs involved in diagnostics and automation. No access to bookmarks or Chrome's history database was found, and cookie values are used to determine Meta login state rather than sent to an unrelated party.
Reads c_user and xs for work.meta.com and b_user for business.facebook.com to determine authentication state. — background.iife.js:9
Tracks session tab URLs and associates observed Meta Pixel fires with their page URLs. — background.iife.js:422, 440
Can it access anything else on your device, such as files, location, camera, microphone, clipboard, or installed applications?
It can capture the visible tab or a debugger-attached page during automation. No camera, microphone, geolocation, clipboard, arbitrary local-file or installed-application access was found.
Implements Page.captureScreenshot through the debugger and captureVisibleTab as a fallback. — background.iife.js:421-422
Does not request clipboard, geolocation, downloads, nativeMessaging, camera or microphone permissions. — manifest.json:13-26
Does it send information outside your browser? If so, what information is sent, where does it go, and why?
During user-started agentic workflows it sends page descriptions, screenshots, tab URLs, action outcomes and workflow identifiers to Meta. Independently, Meta Pixel monitoring sends the page path, pixel ID and event name to Meta telemetry.
Builds each agentic turn request with domState, optional fullDom and screenshotData, tab URL/title data, workflow identifiers and prior results. — background.iife.js:1429-1430
Logs Meta Pixel events with pixel_id, event_name, page origin/path and active tab URL. — background.iife.js:440
Does it download or run code, settings, or instructions supplied by a remote server?
Meta supplies recipes, skill instructions, URL allowlists, feature flags and agentic action plans. Those responses can materially change browser behavior, but the package validates them against known recipe types, fixed tool schemas and URL checks.
Fetches recipes from Meta and maps the requested recipe to a packaged list of supported recipe types. — background.iife.js:440
Fetches skill title, summary, milestones and URL allowlist, then uses them to configure an agentic run. — background.iife.js:2065, 3103
Can it take actions without a clear user request, such as opening pages, redirecting searches, downloading files, or sending requests?
Meta Pixel request monitoring and associated telemetry occur automatically while browsing. More invasive page observation, screenshots and browser actions begin through a visible setup workflow and can be paused or canceled.
Registers persistent webRequest listeners for Meta Pixel endpoints and logs matching events without requiring a per-page click. — background.iife.js:440
The interface exposes Start automation, Pause and Cancel automation controls. — _locales/en/messages.json:248-274, 1372-1374, 5032-5034
Can it change important browser settings, including your proxy, search engine, homepage, privacy settings, or other extensions?
No evidence of this behavior was found in the reviewed package.
Does not request proxy, search, management or settings override permissions. — manifest.json:13-26
The automation's zoom manager enforces a usable zoom during a recipe and resets it during cleanup. — background.iife.js:440, 1442
Is any important behavior difficult to inspect because the code is hidden, heavily obfuscated, dynamically generated, or supplied by third parties?
The service worker is a roughly 3.2 MB minified bundle containing automation, telemetry, GraphQL and Puppeteer code. This materially raises review difficulty, but the sensitive data and action paths remained traceable and minification alone is not evidence of misuse.
Records the package inventory and the multi-megabyte background.iife.js bundle. — inventory.json:1-20
Combines application logic and large bundled dependencies in minified generated code. — background.iife.js:1-3231
Does it use eval(), new Function(), or string-based timers to turn text into executable code?
No evidence of this behavior was found in the reviewed package.
Direct review found no eval or Function-constructor call; agent responses are parsed into validated tool calls. — background.iife.js:1-3231
The all-site content script only forwards structured Meta Pixel error messages and contains no dynamic-code primitive. — content/index.iife.js:1
Does it track the websites, pages, searches, or links you visit?
No evidence of this behavior was found in the reviewed package.
processSinglePixelEvent resolves the tab's current URL and logPixelEventToTelemetry sends pixel_id, event_name, page_url and active_tab_url. — background.iife.js:440
Does it create a persistent ID or browser fingerprint to recognize you?
It generates a persistent extension instance ID and sends it with performance telemetry. Meta Pixel telemetry can also link page paths and event activity to a logged-in Meta session.
Creates and stores signalbrowser:instance_id using crypto.randomUUID and includes it in telemetry and the optional uninstall survey URL. — background.iife.js:9
Sends performance samples with extension_instance_id and Pixel events with page path, event and pixel identifiers. — background.iife.js:440
Does it send cookies, session details, authentication data, or page contents elsewhere?
It reads a small set of Meta cookies and makes credentialed requests to Meta/Facebook for authentication and GraphQL operations. That is normal first-party authentication for this product.
Reads work.meta.com c_user/xs and business.facebook.com b_user, and uses credentials: include for Meta authentication and GraphQL calls. — background.iife.js:9
Declares the cookies permission required for those Meta login checks. — manifest.json:20
Does it record typing, form entries, clipboard contents, or screenshots?
Agentic runs capture page screenshots and visible page content. The automation framework can fill fields, but the reviewed skills explicitly reserve third-party credentials, OAuth, consent and billing for the user.
Captures screenshots and DOM observations for active automation tabs. — background.iife.js:421-422, 1442
Packaged skill instructions require pauses for third-party login and consent rather than automating them. — background.iife.js:2815-2818, 3103
Can a website or remote server send commands that make the extension take actions?
Meta's servers can choose the next click, typed value, navigation or other packaged tool during an active setup. This is a confirmed server-controlled browser-automation path, not remote code execution.
Sends observations to the agentic backend, parses returned actions and rejects unsupported tools or invalid arguments. — background.iife.js:1429-1430
Enforces URL permission and skill allowlist checks and blocks observation/navigation outside the configured allowlist. — background.iife.js:422, 1442, 2065
Does it alter links, referral codes, advertisements, shopping carts, or search results?
No evidence of this behavior was found in the reviewed package.
Defines fixed CLICK, INPUT_TEXT, navigation, selection and wait actions and executes them through the browser context. — background.iife.js:440, 1389
Labels the workflow as automation and provides progress, pause and cancel controls. — _locales/en/messages.json:1372-1374, 4984-5034
Does it redirect or modify web traffic, request headers, downloads, or proxy settings?
It observes Meta Pixel network requests and can make Meta, Google and partner-service requests needed for setup. No general-purpose user-configurable proxy, traffic redirection or hidden download mechanism was found.
webRequest listeners are limited to known Facebook Pixel endpoint patterns and read request parameters/body for diagnostics. — background.iife.js:440
Broad host and webRequest access permits the packaged partner and setup network operations but no proxy permission is present. — manifest.json:10-26
Can it communicate with software on the computer or services running on localhost?
No evidence of this behavior was found in the reviewed package.
Does not declare nativeMessaging, file-system or external-application permissions. — manifest.json:13-26
Does it decode, decrypt, or unpack hidden data and then execute or inject it?
No evidence of this behavior was found in the reviewed package.
Recipe responses are parsed into supported recipe objects and fixed action types. — background.iife.js:440
Agent responses are contract-checked and mapped to registered tools; invalid or unknown tools are rejected. — background.iife.js:1429-1430
Can ordinary websites access privileged extension features through messaging or exposed files?
Facebook, Instagram and CommercePartnerHub pages may open an external port to the extension and request supported workflows. Chrome restricts callers through externally_connectable, the code requires the expected port name and validates partner types.
Restricts external connections to Facebook, Instagram and CommercePartnerHub origins. — manifest.json:85-90
Requires the meta-events-manager port and maps START_RECIPE requests to a fixed supported partner-type list. — background.iife.js:440, 3103
Forwards only same-window objects matching PIXEL_USER_ERROR and a fixed log type to the background diagnostic handler. — content/index.iife.js:1
Does suspicious behavior activate only for certain users, websites, dates, or remote settings?
No evidence of this behavior was found in the reviewed package.
Loads enabled_features and numerous Meta gatekeeper values, then reconfigures diagnostics, overlays and capture behavior. — background.iife.js:9, 2065
Fetches skill metadata and selects agentic setup behavior based on server configuration and launch context. — background.iife.js:3103
Does it perform hidden resource-intensive work, such as cryptocurrency mining?
No evidence of this behavior was found in the reviewed package.
Reviewed network and compute paths implement browser automation, diagnostics and performance telemetry rather than mining. — background.iife.js:1-3231
Does it change form fields or where a form sends its information?
During a user-started setup it can fill form inputs, click buttons and submit configuration on allowlisted service pages. That capability could be dangerous if Meta's planning service were compromised, but no code was found silently rewriting arbitrary form actions or harvesting form submissions outside the active automation.
The fixed tool set supports input, click, selection and navigation actions against DOM elements. — background.iife.js:440, 1389
URL allowlists bound automation and packaged skills require user action for login credentials, OAuth, consent and billing. — background.iife.js:422, 2815-2818, 3103