Meta Mate 🔍 — Link Metadata Extractor (Batch)
Pricing
from $0.01 / actor start
Meta Mate 🔍 — Link Metadata Extractor (Batch)
Fetches one or more URLs and extracts Open Graph tags, Twitter Cards, JSON-LD structured data, meta description, title, and favicon. Supports batch processing of up to 20 URLs.
Pricing
from $0.01 / actor start
Rating
0.0
(0)
Developer
Perry AY
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
18 hours ago
Last modified
Categories
Share
Meta Mate — Extract Open Graph, Twitter Cards, JSON-LD, and SEO Metadata from Any URL
What does it do?
Meta Mate fetches one or more URLs and extracts every piece of metadata they expose — Open Graph tags (used by Facebook, LinkedIn, Discord, Telegram, and Slack), Twitter Cards, JSON-LD structured data, HTML meta tags, page titles, and favicons. It's the fastest way to inspect how your content will appear when shared on social platforms, messaging apps, or search engines. Run a single URL or batch dozens — every tag comes back structured, clean, and ready to analyze.
Who is it for?
| Persona | What they use it for |
|---|---|
| SEO Specialist | Auditing how pages render in social previews, checking og: tags, and verifying JSON-LD structured data implementation |
| Content Marketer | Previewing how blog posts, product pages, and landing pages look when shared on LinkedIn, Twitter, and Facebook before publishing |
| Web Developer | Validating meta tag implementations during development and catching missing og:image or twitter:card tags before launch |
| Social Media Manager | Batch-checking multiple campaign URLs to ensure all landing pages have proper, consistent share previews |
| Data Analyst | Collecting structured metadata (JSON-LD, schema.org) from competitor pages for market research and content analysis |
| Technical Writer | Verifying that documentation pages have correct Open Graph tags and structured data for search engine rich results |
| Digital Publisher | Generating link preview databases for newsletters, content aggregators, and embed widgets |
Why use this?
- See what the social algorithms see — Open Graph tags determine how your link appears on Facebook, LinkedIn, Discord, Slack, Telegram, and WhatsApp. One run tells you if your og:image, og:title, and og:description are set correctly, and whether the image URL is broken or missing.
- All metadata in one response — Open Graph, Twitter Cards, JSON-LD, standard meta tags, page title, and favicon — all returned in a clean JSON object. No need to parse raw HTML, inspect page source, or use a dozen different validator tools.
- Batch mode for bulk auditing — Pass multiple URLs in a single run. Perfect for content inventories, site-wide SEO audits, competitor analysis at scale, and pre-launch campaign verification.
- JSON-LD structured data extraction — Pull schema.org, Article, Product, FAQ, Event, Organization, and other structured data formats from any page. Use it for knowledge graph feed generation, data analysis, or verifying your structured markup.
- Favicon detection — Get the favicon URL for any page. Useful when building link previews, bookmarking tools, dashboard UI elements, or any interface that needs a recognizable site icon next to a link.
- Graceful error handling — If a URL times out, returns a 404, or fails DNS resolution, Meta Mate reports the error for that specific URL while continuing to process the rest of your batch.
Input Parameters
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
urls | array | yes | — | An array of one or more fully qualified URLs to extract metadata from. Each URL should include the protocol (e.g., https://example.com/page). |
Example Input
{"urls": ["https://example.com/blog/post-1","https://example.com/products/widget","https://example.com/about"]}
Output Structure
| Field | Type | Description |
|---|---|---|
results | array | Array of per-URL metadata objects, in the same order as the input |
totalCount | integer | Number of URLs submitted |
successCount | integer | Number of URLs that were successfully fetched and parsed |
failCount | integer | Number of URLs that returned errors |
Per-URL result structure
| Field | Type | Description |
|---|---|---|
url | string | The URL that was fetched |
title | string | The content of the page <title> element |
description | string | The content of the meta description tag |
favicon | string | Absolute URL of the page's favicon image |
openGraph | object | Key-value pairs of all Open Graph (og:) tags found on the page |
twitterCard | object | Key-value pairs of all Twitter Card (twitter:) tags found |
jsonLd | array | Array of parsed JSON-LD structured data objects (may be empty) |
metaTags | object | All other named <meta> tags (viewport, robots, charset, author, etc.) |
canonical | string | The canonical URL specified in <link rel="canonical">, if present |
error | string | Present only if fetching or parsing this URL failed |
Example Output
{"results": [{"url": "https://example.com/blog/post-1","title": "10 Tips for Better Meta Tags","description": "Learn how to optimize your meta tags for social sharing and SEO.","favicon": "https://example.com/favicon.ico","canonical": "https://example.com/blog/post-1","openGraph": {"og:title": "10 Tips for Better Meta Tags","og:description": "Learn how to optimize your meta tags for social sharing and SEO.","og:image": "https://example.com/images/hero.jpg","og:image:width": "1200","og:image:height": "630","og:url": "https://example.com/blog/post-1","og:type": "article","og:site_name": "Example Blog","og:locale": "en_US"},"twitterCard": {"twitter:card": "summary_large_image","twitter:title": "10 Tips for Better Meta Tags","twitter:description": "Learn how to optimize your meta tags for social sharing.","twitter:image": "https://example.com/images/hero.jpg","twitter:site": "@exampleblog"},"jsonLd": [{"@context": "https://schema.org","@type": "Article","headline": "10 Tips for Better Meta Tags","author": {"@type": "Person","name": "Jane Doe"},"datePublished": "2025-06-15T10:00:00Z","image": "https://example.com/images/hero.jpg"}],"metaTags": {"viewport": "width=device-width, initial-scale=1","robots": "index, follow","author": "Jane Doe"}}],"totalCount": 3,"successCount": 1,"failCount": 2}
API Usage
cURL
# Single URL extractioncurl -X POST "https://api.apify.com/v2/acts/perryay~meta-mate/runs" \-H "Content-Type: application/json" \-H "Authorization: Bearer YOUR_API_TOKEN" \-d '{"urls": ["https://example.com/blog/post-1"]}'# Batch extraction for SEO auditcurl -X POST "https://api.apify.com/v2/acts/perryay~meta-mate/runs" \-H "Content-Type: application/json" \-H "Authorization: Bearer YOUR_API_TOKEN" \-d '{"urls": ["https://example.com","https://example.com/about","https://example.com/contact","https://example.com/blog","https://example.com/pricing"]}'
Python
import requestsAPI_TOKEN = "YOUR_API_TOKEN"ACTOR_URL = "https://api.apify.com/v2/acts/perryay~meta-mate/runs"# Batch extract metadata from multiple URLsresponse = requests.post(ACTOR_URL,headers={"Content-Type": "application/json","Authorization": f"Bearer {API_TOKEN}"},json={"urls": ["https://example.com","https://example.com/about","https://example.com/contact"]})result = response.json()print(f"Processed {result['successCount']}/{result['totalCount']} URLs successfully\n")for page in result["results"]:if page.get("error"):print(f"❌ {page['url']}: {page['error']}")continue# Extract key metadataog_title = page.get("openGraph", {}).get("og:title", page["title"])og_image = page.get("openGraph", {}).get("og:image", "(no image)")og_desc = page.get("openGraph", {}).get("og:description", "(no description)")print(f"✅ {page['url']}")print(f" Title: {og_title}")print(f" Image: {og_image}")print(f" Desc: {og_desc[:80]}...")print(f" Favicon: {page.get('favicon', 'N/A')}")print(f" JSON-LD: {len(page.get('jsonLd', []))} object(s)")print()
Use Cases
-
Social Preview Audit — Before launching a marketing campaign, run all landing pages through Meta Mate to verify og:image, og:title, and og:description are set. Check that image URLs resolve and dimensions are correct. Fix missing tags before they ruin your LinkedIn, Facebook, and Discord share previews.
-
Competitive Content Research — Extract metadata, titles, and descriptions from competitor blog posts and product pages. Understand what keywords and social strategies they optimize for. Collect JSON-LD structured data to see how they implement schema.org markup.
-
Structured Data Validation — Verify that your FAQ schema, Product schema, Article schema, and Event schema render correctly and contain valid JSON-LD. Catch syntax errors, missing @context fields, invalid property types, and broken references before Google flags them in Search Console.
-
Bookmarking & Link Preview Tools — Build a bookmarking app, link-sharing dashboard, or news aggregation tool that shows rich previews for every saved URL. Use the favicon, title, description, og:image, and canonical URL output to create beautiful thumbnail cards.
-
Content Inventory at Scale — Run all URLs from your sitemap through Meta Mate to inventory every page's metadata health. Find pages missing og:tags, pages with broken og:image URLs, pages without meta descriptions, and pages with duplicate titles — all in a single structured report.
-
Email Campaign Pre-Flight — Before sending a newsletter or marketing email containing links, run the destination URLs through Meta Mate to confirm they produce proper share previews. No more sending a test email to discover the og:image is missing.
-
Favicon Collection for Dashboards — Build a dashboard or admin panel that shows site favicons next to links. Meta Mate extracts the favicon URL from any page, which you can display as an icon next to bookmarks, recent pages, or external links.
FAQ
Q: How many URLs can I submit in a single run?
A: Meta Mate accepts any number of URLs in the urls array. For very large batches (100+ URLs), processing time scales linearly with count — roughly 1–3 seconds per URL depending on response times of the target servers.
Q: What happens if a URL is unreachable or returns an error?
A: Meta Mate processes each URL independently and gracefully. Unreachable URLs, DNS failures, timeouts, and HTTP errors (404, 500, etc.) are each reported with a descriptive error field on that specific result. All other URLs in the batch continue processing normally.
Q: Does Meta Mate execute JavaScript on the page?
A: No. Meta Mate fetches the raw HTML and parses the <head> section for meta tags and structured data. Content rendered dynamically by JavaScript — typical of single-page apps (SPAs) built with React, Vue, or Angular — will not appear unless the page also includes static meta tags in the initial HTML.
Q: What structured data formats are supported in JSON-LD output?
A: Any JSON-LD embedded in <script type="application/ld+json"> tags is extracted and returned as a parsed JavaScript object. This includes all schema.org types: Article, Product, FAQPage, Recipe, Event, Organization, Person, LocalBusiness, BreadcrumbList, HowTo, VideoObject, and more. The output preserves the full nested structure as the page authored it.
Q: Can I use Meta Mate to check my own site's SEO health? A: Absolutely. It's one of the fastest ways to audit a site's meta tags at scale. Run your homepage, product pages, blog posts, and landing pages through a single batch to verify that every page has a unique title, a well-written meta description, proper og:image, and valid structured data.
Q: Does Meta Mate return og:image:width and og:image:height tags?
A: Yes. If the page includes these optional image dimension tags, they appear as separate keys in the openGraph object. This is useful for verifying that your share images meet the recommended aspect ratio (~1.91:1 for most platforms).
Q: What is the difference between Open Graph and Twitter Cards? A: Open Graph is the broader protocol (used by Facebook, LinkedIn, Discord, Telegram, Pinterest). Twitter Cards are a Twitter-specific extension that can override or supplement OG tags. Meta Mate returns both so you can verify each platform's preview independently.
Q: How does Meta Mate handle relative URLs in meta tag content?
A: Relative URLs in og:image, twitter:image, and <link rel="canonical"> are automatically resolved to absolute URLs based on the page's base URL, so you always get a clickable/usable URL in the output.
Related Tools
- JSON Studio — Format, validate, diff, and transform JSON documents
- QR Craft — Generate high-quality QR codes in PNG or SVG format
- UUID Lab — Generate UUIDs, nanoids, short IDs, and ULIDs
- Domain Intel — WHOIS lookups, DNS enumeration, and SSL certificate validation
Comparison: What Meta Mate extracts vs. what you'd parse manually
| Data Layer | What Meta Mate gives you | Manual alternative |
|---|---|---|
| Page title | title field | Parse <title> from raw HTML |
| Meta description | description field | Find <meta name="description"> in the DOM |
| Open Graph tags | openGraph object (all og: keys) | Iterate over every <meta property="og:*"> tag |
| Twitter Cards | twitterCard object (all twitter: keys) | Iterate over every <meta name="twitter:*"> tag |
| JSON-LD structured data | jsonLd array (parsed objects) | Extract and JSON.parse every <script type="application/ld+json"> |
| Favicon | favicon URL | Find <link rel="icon"> and resolve relative paths |
| Canonical URL | canonical URL | Find <link rel="canonical"> and resolve |
| All other meta tags | metaTags object | Iterate over every remaining <meta> element |
Q: How does Meta Mate handle relative URLs in meta tag content?
A: Relative URLs in og:image, twitter:image, and <link rel="canonical"> are automatically resolved to absolute URLs based on the page's base URL, so you always get a clickable/usable URL in the output.
Q: Can I use Meta Mate to check pages behind authentication? A: Meta Mate fetches the public HTML of each URL. If the page requires authentication (login, session cookie, API key), it will return the login page's metadata rather than the protected content. For authenticated page checks, use Meta Mate on the public-facing URLs of your site.
Q: Does Meta Mate support internationalized domain names (IDNs) and non-ASCII URLs?
A: Yes. Meta Mate accepts internationalized URLs — just make sure they are properly percent-encoded (e.g., https://例子.测试 should be passed as https://xn--fsq.xn--0zwm56d or use the UTF-8 directly; the tool handles encoding as needed).
Q: What happens if a page has no Open Graph tags at all?
A: If a page has no Open Graph tags, the openGraph object will be empty ({}). The title, description, favicon, and other standard meta tags are still returned from the basic HTML parsing, so you always get some useful data even from pages without social metadata.
Q: How fresh is the metadata Meta Mate returns? A: Meta Mate fetches each URL in real time when you make the request. The metadata you receive reflects the current state of the page — not a cached version. This is important for catching recently deployed changes or checking pages that update frequently.
Quick reference: Common Open Graph tags and what they control
| Tag | Purpose | Example value |
|---|---|---|
og:title | Title shown in the social share preview | "10 Tips for Better SEO" |
og:description | Description shown below the title | "Learn how to optimize your site..." |
og:image | Thumbnail image for the share card | https://example.com/hero.jpg |
og:url | Canonical URL of the shared page | https://example.com/blog/post |
og:type | Type of content (article, website, product, video) | "article" |
og:site_name | Brand name displayed above the title | "Example Blog" |
og:locale | Language and region | "en_US" |
Quick reference: Common Twitter Card tags and what they control
| Tag | Purpose | Example value |
|---|---|---|
twitter:card | Card type (summary, summary_large_image, app, player) | "summary_large_image" |
twitter:site | Twitter @handle of the site | "@exampleblog" |
twitter:creator | Twitter @handle of the content author | "@janedoe" |
twitter:title | Title shown in the tweet card | "10 Tips for Better SEO" |
twitter:description | Description shown in the tweet card | "Learn how to optimize..." |
twitter:image | Image URL for the tweet card | https://example.com/hero.jpg |
SEO Keywords
Open Graph extractor, Twitter Card validator, JSON-LD extractor, meta tag scraper, URL metadata extractor, social preview checker, SEO audit tool, favicon finder, structured data extractor, schema.org extractor, batch URL metadata, og:image checker, link preview generator, OG tag validator, meta description extractor, canonical URL checker, social share preview