Capterra Category Scraper — Ranked Software Lists avatar

Capterra Category Scraper — Ranked Software Lists

Pricing

from $1.70 / 1,000 product listeds

Go to Apify Store
Capterra Category Scraper — Ranked Software Lists

Capterra Category Scraper — Ranked Software Lists

Export a software category in Capterra's ranked order, with every product's name, rank, rating, review count, one-line summary and Shortlist flag. Each row carries the two-part page address the other Actors take, which cannot be guessed from a product's name.

Pricing

from $1.70 / 1,000 product listeds

Rating

0.0

(0)

Developer

The Netaji

The Netaji

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Capterra Category Scraper

A software category's ranked listing, exported as a spreadsheet of products. Each row carries the product's rank across the whole category, its name, its aggregate rating and review count, the one-line summary from its listing card, and whether Capterra puts it on the category's own Shortlist.

It also carries the product's page address — and on this site that is the part worth staying for. A Capterra product is addressed by a number and a name, /p/147657/monday-com/, and neither half can be worked out from the other or from the product's own title: Capterra spells them monday-com, GitLab, Structure, Asana-PM. The numbers rot, too. So a category walk is not one way to find products here, it is the way — every other Actor in this family needs an address this one produces.

Accepted input

categorySlugs is required and takes one or more category slugs, one per line, such as project-management-software. The -software suffix is part of the slug, so project-management is a different value and not a valid one. A pasted category page link works too and is reduced to the slug inside it. A bare value with a query string on the end is refused rather than trimmed, because project-management-software?page=2 quietly reduced to the plain slug would serve page 1 to somebody who asked for page 2 — the page is a field of its own.

maxItems bounds each category separately and defaults to 100. The cap is per category rather than per run because a run given five categories is asking for a comparable slice of each; a single shared cap would return the first category and nothing else. Set 0 to walk a category to the end.

startPage sets the page each category begins at and defaults to 1. It resumes a walk that stopped and splits a large category across several runs.

{
"categorySlugs": ["project-management-software"],
"maxItems": 25,
"startPage": 1
}

Response fields

One row per product. This is the first row of that exact run:

{
"category_slug": "project-management-software",
"category_name": "Best Project Management",
"category_url": "https://www.capterra.com/project-management-software/",
"page": 1,
"total_products": 1227,
"page_limit": 26,
"position": 1,
"name": "monday.com AI Work Platform",
"product_id": "147657",
"slug": "monday-com",
"url": "https://www.capterra.com/p/147657/monday-com/",
"summary": "monday.com centralizes work, and automates tasks, allowing teams to manage the entire project lifecycle in one place.",
"shortlisted": true,
"rating": 4.6,
"rating_best": 5,
"review_count": 6095
}

Fields absent from a listing card are returned as null rather than omitted, so every row has the same shape.

url is the key. Paste it into Capterra Profile Scraper or Capterra Reviews Scraper and both halves of the address are read off it; product_id and slug are the same two halves as separate columns for anything that would rather join on them. The name half is case sensitive — GitLab is not gitlab — which is why it is published rather than left to be typed.

position is the rank across the whole category rather than within its page. Page 2 of the category above opened at 26 and ran to 75.

total_products and page_limit disagree, and they are meant to. The category above states 1,227 products while its own pagination stops at page 26. page_limit is the number the walk follows; total_products is Capterra's count of the taxonomy behind the listing, and treating it as a walk target means asking for pages that were never there.

Behaviour on partial results

A category slug Capterra serves nothing for is logged and skipped, and the run continues with the next one. A category that exists and lists no products returns a successful run with no rows for it.

The walk ends on Capterra's own pagination rather than on a short page, and on this listing that distinction is not academic. Measured on 2026-08-23: page 1 of project-management-software returned 25 products at positions 1–25, and pages 2 and 3 returned fifty each, at 26–75 and 76–125, with no product appearing twice — while the response called its own page size 25 on all three. A page of 25 is therefore neither full nor short, it is simply what page 1 looks like, and a walk that stopped on "fewer than a full page" would end every category after its first one.

Frequently asked questions

Why do some runs take half a minute for the first page and two seconds for the next? Because a page Capterra is already holding answers immediately and a page that has to be fetched fresh does not. Across eight live calls on 2026-08-23 the same category endpoint answered in 33.6s, 33.1s and 2.8s. A run that appears to sit still for half a minute before its first row is behaving normally.

Why did a page fail and then work? Capterra sometimes refuses a request outright and states how long to wait. Two of those eight calls came back that way. The wait is honoured and the page is asked for again; the run reports it and carries on rather than failing.

How many products does a category hold? As many as page_limit pages hold, which is fewer than total_products claims. Set maxItems to 0 to find out for a given category — it walks to the last page Capterra paginates to and stops.

Can I get a product's reviews from here? No, and no category row carries any review text. Take url to Capterra Reviews Scraper, which reads 25 reviews a page with the pros and cons kept as separate answers.

Can I search Capterra by product name instead? Not through this Actor, and not usefully by hand either — the name half of a product's address is Capterra's spelling rather than the product's, so a guessed address is an address that does not exist. A category listing is the discovery surface, and the run log names the category and its pagination limit as it starts.

Is a Capterra account, cookie or API key required? No. No account, session cookie or key of any kind is supplied to the Actor or needed by it.

Capterra Profile Scraper reads the vendor's full description, the supported platforms and the product Q&A from any url here.

Capterra Reviews Scraper reads any product's reviews from the same url, with pros and cons apart and the reviewer's job title, industry and length of use on every row.