Meta Tags & Open Graph Checker: Bulk SEO + Schema
Pricing
from $0.80 / 1,000 url checkeds
Meta Tags & Open Graph Checker: Bulk SEO + Schema
Bulk meta tags checker: title and meta description lengths, canonical, noindex, hreflang, Open Graph and Twitter card tags (og:image tested), JSON-LD schema.org types with missing rich-result fields, and SEO problems per URL. Callable by AI agents via MCP. $1 per 1,000 URLs.
Pricing
from $0.80 / 1,000 url checkeds
Rating
0.0
(0)
Developer
Datawright Labs
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 hours ago
Last modified
Categories
Share
For AI agents: Use when asked to check or extract meta tags, the title and meta description, canonical, robots/noindex, hreflang, Open Graph or Twitter card tags, social preview images, or JSON-LD / schema.org structured data for one or many URLs. Call with urls (required), optional outputFilter (all, problems, issues), checkOgImage (default true), includeRawJsonLd and userAgent (browser, googlebot, facebook, mobile). Returns one row per URL: title, titleLength, metaDescription, metaDescriptionLength, canonical, indexable, h1, lang, openGraph, ogImageCheck, twitter, hreflang, schemaTypes, schemaItems (with missing rich-result properties), problems, warnings. Cost: $0.001 per URL ($1 per 1,000); unreachable, blocked and 4xx/5xx pages and invalid inputs free.
For people: Tell your AI agent "check the meta tags and social previews of every page in our sitemap and list the pages missing a description or og:image" and it hands the list to this tool, then reads back the fixes. No pasting URLs into an online meta tag checker one at a time, and 1,000 pages cost $1.
Bulk meta tags checker and Open Graph checker for hundreds or thousands of URLs in one run. Paste a list of pages and this SEO meta tag analyzer loads each one (following redirects) and extracts everything search engines and social networks read: the title tag and meta description with their lengths, canonical URL, meta robots / X-Robots-Tag (noindex, nofollow), hreflang alternates, H1, html lang, viewport, favicon, every Open Graph tag (og:title, og:description, og:image, og:url, og:type, og:site_name) and Twitter card tag, and the JSON-LD schema.org structured data types on the page. It tests that the og:image actually loads, flags schema.org items missing the properties Google needs for rich results, and gives each page a plain-English problems and warnings list. A SUMMARY record lists duplicate titles and meta descriptions across the run.
No proxies, no API keys and no browser: results export to CSV, Excel, JSON or Google Sheets, or run on a schedule to catch meta tag regressions after every release.
What does this meta tags checker do?
- 🏷️ SEO meta tags: title and meta description (with character counts and length warnings), canonical (self or pointing elsewhere, conflicting canonicals), meta robots and X-Robots-Tag (noindex / nofollow), H1 count, lang, charset, viewport, favicon, keywords, author, generator.
- 🖼️ Open Graph and Twitter card checker: every og: and twitter: tag, with the og:image requested to confirm it returns an image (status, content type, size). Missing og:title / og:image and broken preview images are flagged, so links look right when shared on Facebook, LinkedIn, X, Slack, WhatsApp or iMessage.
- 🧩 Structured data (schema.org) extractor: JSON-LD types (Product, Article, Organization, BreadcrumbList, FAQPage, Recipe, Event, JobPosting, LocalBusiness, VideoObject...), microdata and RDFa types, invalid JSON-LD blocks, and items missing the properties Google requires for rich results. Turn on Include raw JSON-LD to get the full parsed structured data.
- 🌍 Hreflang checker: every alternate language URL, invalid language codes, duplicates, missing self-reference and missing x-default.
- 🤖 Desktop, Googlebot, Facebook crawler or iPhone user agent, to see what each crawler gets.
- 🧹 Bulk-friendly: full URLs or bare domains, de-duplicated, up to 50 pages in parallel (at most 4 per host). Bot-challenge pages and 4xx/5xx errors are reported free.
Use cases
- SEO audits: find pages with missing, too long or duplicate titles and meta descriptions, noindex by mistake, or canonicals pointing elsewhere.
- Social sharing QA: make sure every blog post, product and landing page has og:title, og:image and a Twitter card before a campaign.
- Rich results: list which pages carry Product, Article, FAQ or Breadcrumb schema and which required properties are missing.
- Site migrations and releases: re-run after a deploy and compare titles, canonicals and robots tags.
- Competitor research and link previews: extract titles, descriptions, Open Graph images and schema data from any list of URLs.
- Scheduled monitoring: run weekly with Only URLs with problems and get an email, Slack message or webhook when something breaks.
How to use it
- Paste URLs into URLs, one per line (or get every page of a site with the Sitemap URL Extractor first).
- Optionally choose Which URLs to save, the User agent, and whether to Include raw JSON-LD.
- Click Start, then open the Overview or Social previews table, or export the results.
Input example
{"urls": ["https://apify.com","https://github.com/apify/crawlee","https://www.bbc.com/news"],"checkOgImage": true,"outputFilter": "all"}
Output example
{"url": "https://apify.com/","status": "ok","finalUrl": "https://apify.com/","statusCode": 200,"title": "Apify: Marketplace of ready-to-run tools for AI","titleLength": 47,"metaDescription": "Cloud platform for web scraping, browser automation, AI agents, and data for AI...","metaDescriptionLength": 151,"canonical": "https://apify.com/","canonicalIsSelf": true,"metaRobots": null,"indexable": true,"h1": "Get real-time web data for your AI","h1Count": 1,"lang": "en","openGraph": { "title": "Apify: Marketplace of ready-to-run tools for AI", "image": "https://apify.com/og-image/home", "type": "website", "url": "https://apify.com/", "siteName": "Apify" },"ogImageCheck": { "statusCode": 200, "contentType": "image/png", "bytes": null, "ok": true },"twitter": { "card": "summary_large_image", "site": "@apify" },"hreflang": [],"schemaTypes": ["Organization", "WebSite", "SoftwareApplication", "Offer"],"schemaItems": [{ "type": "Organization", "name": "Apify", "missing": [] }],"ok": true,"problems": [],"warnings": [],"checkedAt": "2026-10-25T20:30:00.000Z"}
Pages that can't be loaded (DNS failure, timeout, refused), bot-challenge pages and pages returning HTTP 4xx/5xx come back with status: "error", "blocked" or "http-error" and are free. The SUMMARY record in the key-value store has the counts plus duplicate titles and meta descriptions.
How much does a meta tag check cost?
You pay $0.001 per page checked ($1 per 1,000 URLs), including the og:image test. Unreachable, blocked and 4xx/5xx pages and invalid inputs are free, and URLs skipped by Which URLs to save are free too. No start fee.
| Job | Pages | Cost |
|---|---|---|
| Audit a 300-page website | 300 | $0.30 |
| Weekly meta tag monitor for 1,000 pages | ~4,000/month | ~$4/month |
| Open Graph and schema data for 20,000 URLs | 20,000 | $20 |
- Apify's free plan includes $5 of monthly credit, enough for about 5,000 pages a month.
- Paid Apify plans get automatic discounts: Silver -10%, Gold and above -20%.
- Set Maximum cost per run to cap spend; the Actor stops cleanly at the limit.
Bulk meta tags checker vs. the alternatives
| This Actor | Online meta tag / OG preview checkers | Browser extensions | SEO crawler licenses | |
|---|---|---|---|---|
| Thousands of URLs per run | ✅ | ❌ one at a time | ❌ one tab at a time | ✅ |
| Title, description, canonical, robots, hreflang | ✅ | partly | ✅ | ✅ |
| Open Graph + Twitter card with og:image test | ✅ | ✅ | partly | partly |
| JSON-LD schema types + missing rich-result fields | ✅ | ❌ | partly | ✅ |
| CSV / Excel / JSON / Sheets export, schedules, webhooks | ✅ | ❌ | ❌ | varies |
| Callable by AI agents (MCP) | ✅ | ❌ | ❌ | ❌ |
| Cost model | $1 per 1,000 pages, no subscription | free, manual | free, manual | yearly license |
Use it as an API (Python, JavaScript, cURL)
Python
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("datawright-labs/meta-tags-checker").call(run_input={"urls": ["https://apify.com", "https://example.com"]})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["input"], item.get("title"), item.get("openGraph", {}).get("image"), item.get("problems"))
JavaScript / Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });const run = await client.actor('datawright-labs/meta-tags-checker').call({ urls: ['https://apify.com'] });const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
cURL
curl -X POST "https://api.apify.com/v2/acts/datawright-labs~meta-tags-checker/run-sync-get-dataset-items?token=<YOUR_APIFY_TOKEN>" \-H "Content-Type: application/json" -d '{"urls":["https://apify.com"],"outputFilter":"all"}'
Use it from your AI agent (MCP)
Your AI assistant or agent can run this Actor as a tool through Apify's MCP server, so it can audit meta tags on its own while you chat. Add this server to any MCP client that supports remote (Streamable HTTP) servers:
{"mcpServers": {"datawright-meta-tags-checker": {"url": "https://mcp.apify.com?tools=datawright-labs/meta-tags-checker"}}}
On first use your browser opens to sign in to Apify (OAuth). If your client can't do OAuth, add "headers": { "Authorization": "Bearer <YOUR_APIFY_TOKEN>" } instead. The tool shows up as datawright-labs--meta-tags-checker, with the same input fields as above, and the agent reads the results with get-dataset-items. Then just ask, for example:
Check the meta tags of these 50 blog posts and list the ones with a missing og:image, a title over 60 characters or no Article schema.
Want several Datawright tools at once? Comma-separate them: https://mcp.apify.com?tools=datawright-labs/meta-tags-checker,datawright-labs/sitemap-url-extractor. Runs are billed per result, exactly like normal runs.
FAQ
How do I check the meta tags of a website?
Paste its URLs and run. Each row has the title, meta description, canonical, robots, Open Graph, Twitter and schema data of one page, plus a problems list of what to fix. To check a whole site, get its URLs from the Sitemap URL Extractor first.
How long should a title tag and meta description be?
Google typically shows about 50-60 characters of a title and 150-160 characters of a description. This checker warns above 60 / 160 and below 15 / 50 characters, and lists duplicates across your pages in the SUMMARY record.
How do I check Open Graph tags and the og:image?
Every og: tag is extracted, and with Check that og:image loads on (default) the image URL is requested to confirm it returns an image. Use the Facebook link preview bot user agent to see exactly what Facebook's crawler gets.
Can it extract JSON-LD structured data?
Yes. schemaTypes lists the schema.org types found, schemaItems lists each item and any properties missing for Google rich results, and Include raw JSON-LD adds the full parsed JSON-LD so you can extract product prices, article dates, ratings or organization details.
Does it render JavaScript?
No, it reads the HTML the server sends, which is what most social crawlers (Facebook, LinkedIn, X, Slack) see too. Meta tags injected only by client-side JavaScript show up as missing, which is worth fixing anyway.
Does it check hreflang?
Yes: every alternate URL with its language code, plus invalid codes, duplicates, a missing self-reference and a missing x-default. Hreflang return links on the other pages aren't fetched.
More tools from Datawright Labs
- Sitemap URL Extractor: get every URL of a site from its sitemaps, then check their meta tags here.
- Broken Link Checker: crawl a whole site and find broken links, images and redirects, with the page and anchor text of each.
- Redirect Checker: bulk redirect chains (301, 302, meta refresh), final URL and status, loops and old-to-new migration checks.
- Security Headers Checker: bulk HSTS, CSP, X-Frame-Options and HTTPS redirect checks with an A-F grade.
- Bulk PageSpeed & Core Web Vitals Checker: audit PageSpeed / Lighthouse scores for many URLs.
- Website Screenshot API: bulk full-page screenshots and PDFs.
- SSL Certificate Checker: bulk SSL certificate and domain expiry checks with alerts for expiring, invalid or outdated TLS.
- SPF, DMARC & DKIM Checker: bulk email domain audit of SPF (10-lookup limit), DMARC, DKIM, MX provider, BIMI and MTA-STS.
- WHOIS Domain Lookup (RDAP): bulk registrar, domain age, expiry date, nameservers, EPP status and availability from official registry RDAP.
- Google Autocomplete Keyword Scraper: long-tail keyword ideas from Google, YouTube and Bing.
- Greenhouse, Lever & Ashby Jobs Scraper: normalized job feeds from 5 ATS platforms.
- App Store Top Charts & Rank Tracker: daily top free/paid/grossing app rankings with rank changes.
Tip: pair it with the Sitemap URL Extractor to audit the meta tags of every page in a sitemap, and the Redirect Checker to make sure old URLs land on pages with the right canonical.
Made by Datawright Labs: reliable, fairly priced web data tools. Questions or a missing feature? Open an issue on the Issues tab; we usually reply within a day.