Iframe Detector
Pricing
Pay per event
Iframe Detector
This actor detects embedded iframes on web pages and categorizes them by type: video (YouTube, Vimeo), ads (DoubleClick, Google Ads), maps (Google Maps), social media, and analytics. Reports sandbox and title attributes, identifies accessibility issues, and lists unique iframe domains.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 hours ago
Last modified
Categories
Share
Detect embedded iframes on web pages including ads, videos, maps, and widgets.
What does Iframe Detector do?
This actor detects embedded iframes on web pages and categorizes them by type: video (YouTube, Vimeo), ads (DoubleClick, Google Ads), maps (Google Maps), social media, and analytics. It reports sandbox and title attributes, identifies accessibility issues, and lists unique iframe domains.
The actor loads each page in a browser, finds all iframe elements in the DOM, classifies each by its source domain, and returns structured data about the number and type of embeds found on each page.
Use cases
- Ad audit -- detect advertising iframes on pages to verify ad placement and identify unauthorized ad injections
- Performance analysis -- find heavy iframes that slow down page load, especially third-party ad and widget embeds
- Security review -- check iframe sandbox attributes to ensure embedded content is properly restricted
- Content inventory -- catalog all embedded third-party content across a website for documentation or migration planning
- Accessibility auditing -- identify iframes missing title attributes, which screen readers need to describe embedded content
Why use Iframe Detector?
- Automatic categorization -- iframes are classified as video, ad, map, social media, or analytics without manual inspection
- Structured output -- get clean JSON with iframe counts by type, individual iframe details, and unique domain lists
- Batch processing -- scan hundreds of URLs in a single run to audit iframe usage across entire websites
- Security metadata -- reports sandbox attributes and security-relevant iframe properties for each embed
- API access -- integrate iframe detection into content management or ad-ops workflows
- Pay-per-event pricing -- only pay per URL scanned with no monthly fees
Input parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
urls | array | Yes | -- | List of URLs to scan for iframes. Each URL is loaded in a browser and all iframe elements are extracted. |
Example input
{"urls": ["https://www.google.com","https://www.wikipedia.org","https://example.com"]}
Output fields
Each URL produces one record with the following fields:
| Field | Description |
|---|---|
url | The original URL provided in the input |
iframeCount | Total number of iframes found on the page |
videoIframes | Count of video embed iframes (YouTube, Vimeo, etc.) |
adIframes | Count of advertising iframes (DoubleClick, Google Ads, etc.) |
mapIframes | Count of map embed iframes (Google Maps, etc.) |
iframes | Array of individual iframe objects with src, type, sandbox, and title |
uniqueDomains | Array of unique domains found across all iframes |
issues | Array of accessibility or security issues (e.g., missing title attribute) |
error | Error message if the scan failed, null otherwise |
checkedAt | ISO 8601 timestamp of the scan |
Output example
{"url": "https://www.wikipedia.org","iframeCount": 0,"videoIframes": 0,"adIframes": 0,"mapIframes": 0,"iframes": [],"uniqueDomains": [],"issues": [],"error": null,"checkedAt": "2026-03-01T12:00:00.000Z"}
How to detect iframes on a website
- Go to Iframe Detector on Apify Store
- Enter the URLs of the pages you want to scan for iframes
- Click Start and wait for results
- Review iframe counts, categories, and accessibility issues for each page
- Download results as JSON, CSV, or Excel
How much does it cost to detect iframes?
Iframe Detector uses Apify's pay-per-event pricing. You only pay for what you use.
| Event | Price | Description |
|---|---|---|
| Start | $0.035 | One-time per run |
| URL scanned | $0.001 | Per URL scanned |
Cost examples:
- 10 URLs: $0.035 + 10 x $0.001 = $0.045
- 100 URLs: $0.035 + 100 x $0.001 = $0.135
- 1,000 URLs: $0.035 + 1,000 x $0.001 = $1.035
Using the Apify API
You can start Iframe Detector programmatically using the Apify API. Replace YOUR_TOKEN with your Apify API token.
Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_TOKEN' });const run = await client.actor('automation-lab/iframe-detector').call({urls: ['https://www.wikipedia.org', 'https://www.google.com'],});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python
from apify_client import ApifyClientclient = ApifyClient('YOUR_TOKEN')run = client.actor('automation-lab/iframe-detector').call(run_input={'urls': ['https://www.wikipedia.org', 'https://www.google.com'],})items = client.dataset(run['defaultDatasetId']).list_items().itemsprint(items)
cURL
curl "https://api.apify.com/v2/acts/automation-lab~iframe-detector/runs" \-X POST \-H "Content-Type: application/json" \-H "Authorization: Bearer YOUR_TOKEN" \-d '{"urls": ["https://www.wikipedia.org", "https://www.google.com"]}'
Use with AI agents via MCP
Iframe Detector is available as a tool for AI assistants via the Model Context Protocol (MCP).
Setup for Claude Code
$claude mcp add --transport http apify "https://mcp.apify.com"
Setup for Claude Desktop, Cursor, or VS Code
{"mcpServers": {"apify": {"url": "https://mcp.apify.com"}}}
Example prompts
- "Find all iframes on this webpage"
- "Detect embedded iframes on our website"
Learn more in the Apify MCP documentation.
Integrations
Connect Iframe Detector with other tools using Apify integrations. Export results to Google Sheets for content inventories, send Slack alerts when unexpected iframes appear on monitored pages, trigger Make or Zapier workflows for ad-ops reporting, push data to n8n for custom analytics pipelines, or configure webhooks for real-time monitoring.
Tips and best practices
- Check the uniqueDomains list to quickly see all third-party services embedded on a page without parsing individual iframe entries.
- Monitor the adIframes count over time to detect unauthorized ad injections or verify that ad placements match your configuration.
- Review the issues array for iframes missing sandbox or title attributes, which are common security and accessibility gaps.
- Combine with Mixed Content Checker to ensure embedded iframes are loaded over HTTPS on secure pages.
- Use for migration planning by cataloging all third-party embeds before a site redesign to ensure nothing is lost.
Legality
This tool analyzes publicly accessible web content. Automated analysis of public web resources is standard practice in SEO and web development. Always respect robots.txt directives and rate limits when analyzing third-party websites. For personal data processing, ensure compliance with applicable privacy regulations.
FAQ
What iframe categories does the actor detect? The actor classifies iframes as video (YouTube, Vimeo), ads (DoubleClick, Google Ads), maps (Google Maps), social media, or analytics based on the source domain. Unrecognized domains are reported as uncategorized.
Does the actor detect dynamically loaded iframes? Yes. The actor uses a real browser to load pages, so iframes injected by JavaScript after page load are also detected.
What does the sandbox attribute check mean? The sandbox attribute restricts what embedded content can do (e.g., prevent scripts, form submission, popups). The actor reports whether sandbox is set and what restrictions are applied, which is important for security reviews.
Can I detect iframes on pages that require JavaScript to render? Yes. The actor uses a full browser environment to load pages, so iframes rendered by JavaScript frameworks or loaded dynamically via AJAX are detected alongside static HTML iframes.
The actor timed out on a page. What should I do? Some pages with heavy JavaScript or many third-party resources can take a long time to load in the browser. The actor waits for the page to fully render before scanning for iframes. If timeouts occur, check whether the page itself loads slowly in a browser, or try reducing the number of URLs per run.
Why does the actor report fewer iframes than I see in browser DevTools? Some iframes are created dynamically after user interaction (e.g., clicking a button or scrolling). The actor captures iframes present after initial page load but does not simulate user interactions. Iframes triggered by clicks, hover events, or lazy-scroll beyond the initial viewport may not be detected.
What happens if a page has no iframes?
The actor still produces a valid output record with iframeCount: 0 and empty arrays for iframes and uniqueDomains. This confirms the page was successfully scanned and contains no embedded iframe content.
Other SEO tools
- Heading Structure Checker — Analyze heading hierarchy (H1-H6) for SEO and accessibility
- Hreflang Checker — Validate hreflang tags for international SEO
- HTML Validator — Check HTML structure, doctype, charset, and deprecated elements
- HTTP Headers Security Checker — Analyze HTTP security headers with A+ to F grading
- HTTP Status Checker — Check HTTP status codes, redirects, and response times
- Image Alt Checker — Check images for missing or poor alt text
- Accessibility Checker — Audit web pages for WCAG accessibility compliance
- SEO Title Checker — Validate page titles for SEO best practices
- Broken Link Checker — Find broken links across your website
- Website Health Report — Comprehensive website health and SEO audit
