WordPress Plugin & Theme Scraper - Installs, Ratings & Leads avatar

WordPress Plugin & Theme Scraper - Installs, Ratings & Leads

Pricing

from $5.00 / 1,000 plugin / theme scrapeds

Go to Apify Store
WordPress Plugin & Theme Scraper - Installs, Ratings & Leads

WordPress Plugin & Theme Scraper - Installs, Ratings & Leads

Scrape WordPress.org plugins & themes: active installs, downloads, ratings, support stats, version history, changelogs, WP/PHP compatibility, business model & author contact leads. Search by keyword, tag or author. Monitor mode for new/changed items. Export JSON, CSV, Excel.

Pricing

from $5.00 / 1,000 plugin / theme scrapeds

Rating

0.0

(0)

Developer

Scrape Sage

Scrape Sage

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Share

WordPress Plugin & Theme Scraper — Installs, Ratings, Changelogs & Author Leads

Extract complete WordPress.org plugin and theme data — including the fields most scrapers skip: real active-install counts, full ratings histograms, support-thread resolution rates, version history, changelogs, WP/PHP compatibility, contributors, and business model. Optionally turn every plugin/theme author into a ready-to-contact B2B lead by crawling their own website for emails, phone numbers, and social links.

No login, no API key, no browser — fast JSON extraction from the official WordPress.org directory API with 99%+ reliability.

Why this WordPress scraper?

WordPress powers ~43% of the web, and its directory holds 60,000+ plugins and 12,000+ themes. Most scrapers return a slug, a name, and a rating. This actor pulls the full directory record and ships the richest dataset in the category:

DataTypical scrapersThis actor
Active installs + human-readable text + bucketpartial
Total downloads
Full ratings histogram (1–5 ★ counts)
Support threads + resolution rate
Version history + version count
Changelog / FAQ / installation text
WP "requires", "tested up to", "requires PHP"partial
Business model (commercial / community)
Contributors (with profiles)
Days since update + abandoned flag
Author website, emails, phone, socials✅ opt-in
Lead score (0–100) per author
Monitor mode — only new / changed items

Use cases

  • Plugin & theme competitive intelligence — track a competitor's activeInstalls, rating, numRatings, version cadence (availableVersions, lastUpdatedDate) and supportResolutionRate over time. Monitor mode returns only what changed.
  • Lead generation — plugin & theme authors are active buyers and partners (hosting, security, CDN, support tooling, white-label, acquisitions). Score them by reach (activeInstalls, leadScore), flag the monetizing ones (businessModel: "commercial", donateLink, commercialSupportUrl), and contact them directly (contactEmails).
  • Acquisition & M&A sourcing — find established, well-rated, recently maintained plugins/themes in a niche (tags, minActiveInstalls, minRating) and reach the author. Use the authors mode to pull a publisher's entire portfolio.
  • Market & ecosystem research — size a category (SEO, WooCommerce, security, backups, page builders), benchmark ratings and install distributions, and spot abandoned plugins (isAbandoned) ripe for replacement.
  • Security & compatibility auditing — surface plugins not tested with the latest WordPress (testedUpToWp), with low requiresPhp, or long abandoned.
  • Directory / SEO content — power "best X plugins" listicles, comparison tables, and plugin directories with structured, always-fresh data.

How to use

  1. Sign up for Apify — the free plan is enough to try this actor.
  2. Open the WordPress Plugin & Theme Scraper, pick a mode, enter keywords / tags / authors (or paste plugin/theme URLs), and click Start.
  3. Watch results stream into the dataset table.
  4. Export as JSON, CSV, Excel, XML, or RSS — or pull results programmatically via the Apify API.

Input

{
"mode": "searchPlugins",
"searchQueries": ["seo", "woocommerce payments"],
"tags": ["security"],
"browse": "popular",
"maxResults": 200,
"fullDetails": true,
"minActiveInstalls": 1000,
"enrichContacts": true,
"monitorMode": false
}
  • modesearchPlugins / searchThemes (search or browse the directory) or pluginDetails / themeDetails (specific items by slug or URL).
  • searchQueries — keywords; each is scraped separately (seo, backup, contact form).
  • browse — a curated list: popular, featured, new, updated, top-rated.
  • tags — directory tag slugs (woocommerce, security, gutenberg, elementor).
  • authors — WordPress.org usernames to pull a publisher's entire portfolio (automattic).
  • slugs / startUrls — for the "Specific…" modes: slugs (woocommerce, astra) or full directory URLs.
  • maxResults — cap across all queries.
  • fullDetails (default true) — fetch the complete record (contributors, versions, changelog, screenshots, business model) for every result.
  • minActiveInstalls / minRating — keep only established / well-rated items.
  • includeRawData (default false) — attach the untouched API response under raw.
  • enrichContacts (default false) — crawl each author's website (home + contact/about, max 3 pages) for emails, phones, and socials. WordPress.org never exposes emails — this is the only way to get them.
  • monitorMode (default false) — only output new / changed items vs. the previous run (see below).
  • monitorField — what counts as a change: any, version, active_installs, or last_updated.
  • onlyNew — in monitor mode, output only items never seen before.
  • monitorKey — namespace for the monitor memory (use a stable, unique value per watch).

Output

One record per plugin (type: "plugin") or theme (type: "theme"):

{
"type": "plugin",
"slug": "seo-by-rank-math",
"name": "Rank Math SEO – AI SEO Tools to Dominate SEO Rankings",
"url": "https://wordpress.org/plugins/seo-by-rank-math/",
"version": "1.0.272",
"shortDescription": "Rank Math SEO is the best WordPress SEO plugin…",
"author": "Rank Math SEO",
"authorProfileUrl": "https://profiles.wordpress.org/rankmath/",
"authorUsername": "rankmath",
"contributors": [{ "username": "rankmath", "displayName": "Rank Math SEO", "profileUrl": "https://profiles.wordpress.org/rankmath/" }],
"activeInstalls": 4000000,
"activeInstallsText": "4+ million",
"installsBucket": "1M+",
"downloaded": 183628786,
"rating": 96,
"ratingStars": 4.8,
"numRatings": 7444,
"ratingsHistogram": { "5": 7015, "4": 142, "3": 51, "2": 42, "1": 194 },
"supportThreads": 65,
"supportThreadsResolved": 64,
"supportResolutionRate": 98,
"requiresWp": "6.3",
"testedUpToWp": "7.0",
"requiresPhp": "7.4",
"lastUpdated": "2026-06-10 8:09am GMT",
"lastUpdatedDate": "2026-06-10",
"daysSinceUpdate": 6,
"added": "2018-11-19",
"ageDays": 2766,
"isAbandoned": false,
"homepage": "https://rankmath.com/",
"businessModel": "commercial",
"monetized": true,
"tags": ["SEO", "Google Search Console", "schema", "sitemap"],
"availableVersions": ["1.0.270", "1.0.271", "1.0.272"],
"versionsCount": 412,
"leadScore": 92,
"contactWebsite": "https://rankmath.com",
"contactEmails": ["support@rankmath.com"],
"socialLinks": { "twitter": "https://twitter.com/rankmathseo", "facebook": "https://facebook.com/rankmath" },
"searchQuery": "search:seo",
"scrapedAt": "2026-06-16T22:00:00.000Z"
}

Theme records add screenshotUrl, previewUrl, isCommercial / isCommunity, externalRepositoryUrl, isChildTheme / parentTheme, and created.

Monitor mode (and how it works with Apify Schedules)

Turn on monitorMode and the actor remembers every item it has seen (in a private key-value store keyed by monitorKey). On the next run it outputs only the new items or the ones whose version / active installs / last-updated date changed.

This is independent of, and complementary to, Apify Schedules: the schedule simply triggers the run on your cadence (hourly/daily/weekly), and monitor mode decides what's worth emitting. There is no conflict — point a Schedule at the actor with monitorMode: true and you get a clean feed of only the deltas, perfect for Slack alerts, changelog feeds, or competitor dashboards. Use a distinct monitorKey per watch so different jobs don't share memory.

Automate & schedule

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'MY_APIFY_TOKEN' });
const run = await client.actor('scrapesage/wordpress-plugin-theme-scraper').call({
mode: 'searchPlugins',
searchQueries: ['woocommerce'],
minActiveInstalls: 5000,
enrichContacts: true,
maxResults: 200,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Got ${items.length} plugins & author leads`);

Integrate with any app

Connect the dataset to 5,000+ apps — no code required:

  • Make — multi-step automation scenarios.
  • Zapier — push new author leads straight into your CRM.
  • Slack — get alerted when a monitored plugin ships a new version.
  • Google Drive / Sheets — auto-export every run to a spreadsheet.
  • Airbyte — pipe results into your data warehouse.
  • GitHub — trigger runs from commits or releases.

Use with AI assistants (MCP)

The output is clean, LLM-ready JSON. Call this actor from Claude, ChatGPT, or any agent framework through the Apify MCP server — ask your assistant to "find the top WooCommerce plugins with over 100k installs and list their authors' contact emails" and let it run this scraper for you.

Agent-ready: autonomous payments (x402 & Skyfire)

This actor is agent-ready — AI agents can discover it, run it, and pay for it autonomously, with no Apify account and no human in the loop. It uses pay-per-event pricing and limited permissions, so it qualifies for Apify's agentic-payment standards:

  • x402 — an open, HTTP-native payment protocol. Agents pay per run in USDC on the Base network directly through the Apify MCP server — no account, no API key.
  • Skyfire — agent-to-service payments for fully autonomous AI-agent workflows.

Building an AI agent, MCP tool, or autonomous data pipeline? This scraper is ready to plug in and pay as it goes.

More scrapers from scrapesage

Build a complete app-marketplace & developer intelligence stack:

Tips

  • Exhaust a niche: combine a tag (e.g. woocommerce) with browse: "popular" and a high maxResults, then filter with minActiveInstalls.
  • Best leads: monetizing authors make the strongest B2B leads — sort by leadScore and filter monetized: true / businessModel: "commercial".
  • Cost & speed: turn off fullDetails for a quick scan of search-result fields; keep it on (default) for the complete record. Contact enrichment only runs for items that actually have a website.
  • Themes: theme records always fetch full details (active installs, ratings, sections) regardless of fullDetails.

FAQ

Does it use the WordPress.org API? Yes — the official, public, keyless directory API (api.wordpress.org). No login, no token, no browser.

How do I scrape every plugin by one company? Use mode: "searchPlugins" with their WordPress.org username in authors (e.g. automattic) — you'll get their whole portfolio.

Where do the emails come from? Never from WordPress.org (it doesn't publish emails). With enrichContacts on, the actor visits the author's own public website and extracts publicly listed contact details — the same thing a human visitor would see.

How do I monitor new versions automatically? Turn on monitorMode, set a unique monitorKey, and create a Schedule. Each run returns only the items that changed.

Can I export to Google Sheets, CSV, or Excel? Yes — one click in the dataset view, or automatically on every run via the Google Drive integration.

A field is null — why? Some plugins genuinely don't set a homepage, donate link, or business model. Fields are null only when the data doesn't exist, not because the scraper skipped them.

Is scraping WordPress.org legal? This actor collects publicly available directory data only. You are responsible for using the data in compliance with applicable laws (GDPR/CCPA for personal data) and WordPress.org's terms.

Need help?

Open an issue on the actor's Issues tab, or visit the Apify help center. Feature requests are welcome — this actor is actively maintained.