{
  "data": {
    "id": "EWES3bzQqC878YYgu",
    "actId": "LZiSsJmpuWcRPjgRk",
    "userId": "IYgBDiXtHOijAaUel",
    "startedAt": "2026-11-10T08:42:29.529Z",
    "finishedAt": "2026-11-10T08:44:14.931Z",
    "status": "SUCCEEDED",
    "meta": {
      "origin": "CLI"
    },
    "stats": {
      "durationMillis": 105322,
      "runTimeSecs": 105.322,
      "computeUnits": 0.11702444444444444,
      "imageSizeBytes": 5862855168
    },
    "options": {
      "useCache": true,
      "betaPackages": false,
      "memoryMbytes": 4096,
      "diskMbytes": 8192
    },
    "createdByOrganizationMemberUserId": "QYo53EZkJk0prePWY",
    "exitCode": 0,
    "inputSchema": "{\n  \"title\": \"Capterra Scraper Input\",\n  \"description\": \"Extract Capterra software profiles (pricing, features, integrations, alternatives, FAQs, media, ratings), browse category listings, search by name, and export reviews. No cookies, API keys or proxy setup needed.\",\n  \"type\": \"object\",\n  \"schemaVersion\": 1,\n  \"properties\": {\n    \"mode\": {\n      \"title\": \"Mode\",\n      \"type\": \"string\",\n      \"description\": \"What to scrape. Product URLs give the full profile; search queries resolve up to 20 products per query; category URLs walk a ranked category listing.\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"byProductUrls\",\n        \"bySearchQueries\",\n        \"byCategoryUrls\"\n      ],\n      \"enumTitles\": [\n        \"Scrape product URLs\",\n        \"Search by product or category name\",\n        \"Browse category listings\"\n      ],\n      \"default\": \"byProductUrls\",\n      \"prefill\": \"byProductUrls\"\n    },\n    \"productUrls\": {\n      \"title\": \"Product URLs\",\n      \"type\": \"array\",\n      \"description\": \"Capterra product pages to scrape (mode=byProductUrls). Paste full URLs such as https://www.capterra.com/p/135003/Slack/ , /p/id/slug paths, or compare URLs (both products are expanded). Regional capterra.* domains are accepted.\",\n      \"editor\": \"stringList\",\n      \"default\": [\n        \"https://www.capterra.com/p/135003/Slack/\"\n      ],\n      \"prefill\": [\n        \"https://www.capterra.com/p/135003/Slack/\"\n      ]\n    },\n    \"searchQueries\": {\n      \"title\": \"Search queries\",\n      \"type\": \"array\",\n      \"description\": \"Product names or category terms to search on Capterra (mode=bySearchQueries), e.g. `Slack`, `project management software`, `CRM`. Capterra returns up to 20 products per query.\",\n      \"editor\": \"stringList\",\n      \"default\": [],\n      \"prefill\": []\n    },\n    \"categoryUrls\": {\n      \"title\": \"Category URLs\",\n      \"type\": \"array\",\n      \"description\": \"Capterra category pages or slugs to browse (mode=byCategoryUrls), e.g. https://www.capterra.com/team-communication-software/ or `team-communication-software`. Use spaces or hyphens in the slug.\",\n      \"editor\": \"stringList\",\n      \"default\": [],\n      \"prefill\": []\n    },\n    \"sortBy\": {\n      \"title\": \"Category sort\",\n      \"type\": \"string\",\n      \"description\": \"Order of products inside a category listing (mode=byCategoryUrls).\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"featured\",\n        \"most_reviews\",\n        \"highest_rated\",\n        \"alphabetical\"\n      ],\n      \"enumTitles\": [\n        \"Featured (Capterra default)\",\n        \"Most reviews\",\n        \"Highest rated\",\n        \"Alphabetical\"\n      ],\n      \"default\": \"featured\",\n      \"prefill\": \"featured\"\n    },\n    \"maxItems\": {\n      \"title\": \"Max products\",\n      \"type\": \"integer\",\n      \"description\": \"Maximum number of product records to emit.\",\n      \"minimum\": 1,\n      \"maximum\": 250,\n      \"default\": 10,\n      \"prefill\": 1,\n      \"sectionCaption\": \"Output options\",\n      \"sectionDescription\": \"Control how many products and how much extra data each record contains.\"\n    },\n    \"includeReviews\": {\n      \"title\": \"Include reviews\",\n      \"type\": \"boolean\",\n      \"description\": \"Attach the latest reviews that Capterra publishes on the product page. Set false for the smallest possible run.\",\n      \"default\": true,\n      \"prefill\": false\n    },\n    \"maxReviews\": {\n      \"title\": \"Max reviews per product\",\n      \"type\": \"integer\",\n      \"description\": \"Maximum reviews attached to each product record (used when Include reviews is on).\",\n      \"minimum\": 1,\n      \"maximum\": 100,\n      \"default\": 20,\n      \"prefill\": 5\n    },\n    \"reviewSort\": {\n      \"title\": \"Review sort\",\n      \"type\": \"string\",\n      \"description\": \"How attached reviews are ordered before the per-product limit is applied.\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"most_recent\",\n        \"highest_rated\",\n        \"lowest_rated\",\n        \"most_helpful\"\n      ],\n      \"enumTitles\": [\n        \"Most recent\",\n        \"Highest rated\",\n        \"Lowest rated\",\n        \"Most helpful (Capterra order)\"\n      ],\n      \"default\": \"most_recent\",\n      \"prefill\": \"most_recent\"\n    },\n    \"minReviewRating\": {\n      \"title\": \"Minimum review rating\",\n      \"type\": \"integer\",\n      \"description\": \"Keep only reviews with at least this star rating. 0 means no minimum.\",\n      \"minimum\": 0,\n      \"maximum\": 5,\n      \"default\": 0,\n      \"prefill\": 0\n    },\n    \"maxReviewRating\": {\n      \"title\": \"Maximum review rating\",\n      \"type\": \"integer\",\n      \"description\": \"Keep only reviews with at most this star rating. 0 means no maximum.\",\n      \"minimum\": 0,\n      \"maximum\": 5,\n      \"default\": 0,\n      \"prefill\": 0\n    },\n    \"fetchAllReviews\": {\n      \"title\": \"Fetch more reviews\",\n      \"type\": \"boolean\",\n      \"description\": \"Also walk the dedicated reviews pages to collect more reviews than the product page shows, up to Max reviews. Adds one request per review page.\",\n      \"default\": false,\n      \"prefill\": false\n    },\n    \"includeAlternatives\": {\n      \"title\": \"Include alternatives\",\n      \"type\": \"boolean\",\n      \"description\": \"Attach the products Capterra lists as alternatives (name, rating, price, URL).\",\n      \"default\": true,\n      \"prefill\": false\n    },\n    \"includeFaqs\": {\n      \"title\": \"Include FAQs\",\n      \"type\": \"boolean\",\n      \"description\": \"Attach the product FAQ entries shown on the Capterra profile.\",\n      \"default\": true,\n      \"prefill\": false\n    },\n    \"_probeBrowser\": {\n      \"title\": \"Diagnostic probe\",\n      \"type\": \"boolean\",\n      \"description\": \"Internal diagnostic mode. Tests the transport matrix and writes one probe record per combination; no product records are produced.\",\n      \"editor\": \"hidden\",\n      \"default\": false\n    },\n    \"_probeTransport\": {\n      \"title\": \"Diagnostic probe scope\",\n      \"type\": \"string\",\n      \"description\": \"Internal. `full` tests every transport already probed; `auto` tests only the free AUTO datacenter rung.\",\n      \"editor\": \"hidden\",\n      \"default\": \"full\"\n    }\n  },\n  \"required\": [\n    \"mode\"\n  ]\n}",
    "readme": "# Capterra Software Pricing & Feature Extractor\n\nTurn Capterra software pages into structured JSON: pricing plans and starting prices, the full feature and integration catalog, alternatives, FAQs, screenshots and videos, ratings with sub-scores and star distribution, review sentiment and topics, reviewer firmographics, and the reviews themselves with pros, cons and vendor replies.\n\nPaste product page URLs, type product or category names, or point it at a ranked category listing. No login, cookies, API key, or proxy setup is required.\n\n## What this actor does\n\n- **Full product profile** - name, description, overview, logo, primary category, all use-case categories, last-updated date\n- **Pricing** - starting price with currency and period, pricing model, free-trial and free-version flags, and every published plan with its included features (or \"contact vendor\" pricing)\n- **Features** - every feature Capterra lists, plus per-feature quality rating, review count, importance percentage and a review-based description where Capterra publishes them\n- **Integrations** - the complete integration list with product links, logos and review counts, plus the total count\n- **Ratings** - overall rating and review count, ease-of-use / value-for-money / customer-support / functionality sub-ratings, 1-5 star distribution, recommendation percentage, review sentiment percentages and mentioned topics\n- **Reviews** - reviewer name, job title, industry, company size and time using the product; overall and sub-ratings; recommendation score; pros, cons and comments; verified and incentive flags; vendor responses\n- **Market context** - alternatives with ratings and prices, FAQs, awards, reviewer company-size / industry / job-function breakdowns\n- **Media** - screenshot URLs and product video URLs\n\nEvery record has `sourceUrl`, `recordType` and `scrapedAt`. A field Capterra does not publish for a product is left out of that record - never emitted as `null`, an empty string, a zero or a placeholder.\n\n## Output per product\n\n- **Identity:** `productId`, `slug`, `name`, `url`, `sourceUrl`, `reviewsUrl`, `siteName`, `recordType`, `scrapedAt`\n- **Profile:** `description`, `overview`, `logo`, `primaryCategory`, `categories[]`, `categorySlugs[]`, `lastUpdated`\n- **Ratings:** `rating`, `reviewCount`, `ratingBreakdown` (`easeOfUse`, `valueForMoney`, `customerSupport` - each with `rating` and `reviewCount`), `ratingDistribution` (stars `1`-`5`), `reviewSentiment` (`positivePercent`, `neutralPercent`, `negativePercent`), `companySizeBreakdown` (`smallBusinessPercent`, `midsizePercent`, `enterprisePercent`), `topIndustries[]` and `topJobFunctions[]` (`name`, `percent`)\n- **Pricing:** `startingPrice`, `priceCurrency`, `pricePeriodicity`, `pricingModel`, `freeTrial`, `freeVersion`, `pricingPlans[]` (`name`, `price`, `priceFormatted`, `priceCurrency`, `pricePeriodicity`, `pricingModel`, `startingPrice`, `attributes`)\n- **Features and integrations:** `featureCount`, `features[]`, `featureDetails[]` (`name`, `description`, `rating`, `reviewCount`, `importancePercent`), `integrationsCount`, `integrations[]`, `integrationDetails[]` (`name`, `url`, `logo`, `productId`, `reviewCount`)\n- **Market context:** `platforms[]`, `useCases[]` (`name`, `slug`), `supportOptions[]`, `trainingOptions[]`, `typicalCustomers[]`, `awards[]` (`name`, `type`, `year`), `pros[]` and `cons[]` (`topic`, `summary`, `mentionCount`, `reviewerName`, `reviewerTitle`, `reviewerQuote`, `sentiment`, `sentimentScore`)\n- **Reviews:** `reviews[]` with reviewer name, job title, industry, company size and time using the product; overall and sub-ratings; recommendation score; pros, cons and comments; verified and incentive flags; vendor responses\n- **Media:** `screenshots[]`, `videos[]`\n\n## Modes\n\n| Mode | Input | What happens |\n|---|---|---|\n| `byProductUrls` (default) | `productUrls` | Scrapes each Capterra product page. Accepts full URLs, `/p/id/slug` paths and compare URLs (both sides are expanded). Regional `capterra.*` domains work. |\n| `bySearchQueries` | `searchQueries` | Searches Capterra for each name or category term and scrapes the products it returns. Capterra returns up to 20 products per query. |\n| `byCategoryUrls` | `categoryUrls` | Walks a ranked category listing page by page and scrapes every product, with an optional sort order. |\n\n## Input\n\n| Field | Type | Default | Description |\n|---|---|---|---|\n| `mode` | select | `byProductUrls` | Which mode to run |\n| `productUrls` | array | Slack product URL | Product pages (mode=byProductUrls) |\n| `searchQueries` | array | `[]` | Names or category terms (mode=bySearchQueries) |\n| `categoryUrls` | array | `[]` | Category pages or slugs (mode=byCategoryUrls) |\n| `sortBy` | select | `featured` | Category order: featured, most reviews, highest rated, alphabetical |\n| `maxItems` | integer | 10 | Maximum products to return (1-250) |\n| `includeReviews` | boolean | true | Attach the reviews Capterra publishes on the product page |\n| `maxReviews` | integer | 20 | Reviews per product (1-100) |\n| `reviewSort` | select | `most_recent` | most_recent, highest_rated, lowest_rated, most_helpful |\n| `minReviewRating` | integer | 0 | Keep reviews at or above this star rating (0 = no minimum) |\n| `maxReviewRating` | integer | 0 | Keep reviews at or below this star rating (0 = no maximum) |\n| `fetchAllReviews` | boolean | false | Walk the reviews pages for more reviews than the product page shows |\n| `includeAlternatives` | boolean | true | Attach the alternatives list |\n| `includeFaqs` | boolean | true | Attach the product FAQs |\n\n### Example: several products by URL\n\n```json\n{\n  \"mode\": \"byProductUrls\",\n  \"productUrls\": [\n    \"https://www.capterra.com/p/135003/Slack/\",\n    \"https://www.capterra.com/p/211559/Trello/\"\n  ],\n  \"includeReviews\": true,\n  \"maxReviews\": 10\n}\n```\n\n### Example: search by name\n\n```json\n{\n  \"mode\": \"bySearchQueries\",\n  \"searchQueries\": [\"project management\", \"CRM software\"],\n  \"maxItems\": 20\n}\n```\n\n### Example: browse a category with reviews filtered to low ratings\n\n```json\n{\n  \"mode\": \"byCategoryUrls\",\n  \"categoryUrls\": [\"https://www.capterra.com/team-communication-software/\"],\n  \"sortBy\": \"most_reviews\",\n  \"maxItems\": 25,\n  \"fetchAllReviews\": true,\n  \"maxReviews\": 30,\n  \"maxReviewRating\": 2\n}\n```\n\n### Example: compare URL\n\n```json\n{\n  \"mode\": \"byProductUrls\",\n  \"productUrls\": [\n    \"https://www.capterra.com/compare/135003-168668/Slack-vs-Microsoft-Teams\"\n  ]\n}\n```\n\nBoth products in the compare URL are scraped as separate records.\n\n## Output example (trimmed)\n\n```json\n{\n  \"productId\": \"135003\",\n  \"slug\": \"Slack\",\n  \"name\": \"Slack\",\n  \"url\": \"https://www.capterra.com/p/135003/Slack/\",\n  \"sourceUrl\": \"https://www.capterra.com/p/135003/Slack/\",\n  \"reviewsUrl\": \"https://www.capterra.com/p/135003/Slack/reviews/\",\n  \"siteName\": \"Capterra\",\n  \"rating\": 4.66,\n  \"reviewCount\": 24266,\n  \"ratingBreakdown\": {\n    \"easeOfUse\": {\"rating\": 4.6, \"reviewCount\": 22799},\n    \"valueForMoney\": {\"rating\": 4.5, \"reviewCount\": 15350},\n    \"customerSupport\": {\"rating\": 4.4, \"reviewCount\": 13607}\n  },\n  \"ratingDistribution\": {\"1\": 48, \"2\": 129, \"3\": 917, \"4\": 5767, \"5\": 17405},\n  \"reviewSentiment\": {\"positivePercent\": 96, \"neutralPercent\": 4, \"negativePercent\": 1},\n  \"startingPrice\": \"$8.75 / month\",\n  \"priceCurrency\": \"USD\",\n  \"pricingModel\": \"Per User\",\n  \"freeTrial\": true,\n  \"freeVersion\": true,\n  \"primaryCategory\": \"Team Communication Software\",\n  \"featureCount\": 105,\n  \"integrationsCount\": 173,\n  \"platforms\": [\"Web-Based\", \"Mac\", \"Windows\", \"Linux\", \"Android\", \"iPhone\", \"iPad\"],\n  \"reviews\": [\n    {\n      \"reviewId\": \"Capterra___7215330\",\n      \"title\": \"Reliable Communication and Collaboration Platform\",\n      \"rating\": 5.0,\n      \"date\": \"2026-09-18\",\n      \"reviewerName\": \"Anbuselvam S.\",\n      \"reviewerJobTitle\": \"LLM Trainer\",\n      \"reviewerCompanySize\": \"10,001+ employees\",\n      \"reviewerIndustry\": \"Information Technology and Services\",\n      \"pros\": \"Slack makes day-to-day communication very easy...\",\n      \"cons\": \"The number of notifications can sometimes become distracting...\",\n      \"recommendScore\": 10.0,\n      \"verified\": true\n    }\n  ],\n  \"recordType\": \"software\",\n  \"scrapedAt\": \"2026-11-09T17:40:00+00:00\"\n}\n```\n\n## Use cases\n\n- **Competitive pricing research** - export every published plan and its included features for a set of rivals\n- **Feature-gap analysis** - compare complete feature and integration catalogs side by side\n- **Voice-of-customer analysis** - pull reviews with pros, cons, sub-ratings and reviewer firmographics\n- **Category mapping** - enumerate a ranked category and track rating / review-count changes over time\n- **Procurement shortlists** - collect alternatives, pricing, deployment options and support channels in one dataset\n\n## FAQ\n\n**Do I need a Capterra account, cookies or a proxy?**\nNo. The actor reads public pages and handles the site's bot challenge automatically. You do not configure a proxy.\n\n**How many products can one run return?**\nUp to 250. A category page lists 25 products and the actor paginates automatically. A search query returns at most 20 products because Capterra's search does not paginate; use several queries for broader coverage.\n\n**Why is a field missing from one product?**\nCapterra does not publish every field for every product. A product without listed pricing has no `startingPrice` or `pricingPlans`; a product with too few recent reviews has no firmographic breakdowns. Missing means \"not published\", never a made-up value.\n\n**How many reviews can I get per product?**\nThe product page carries a batch of recent reviews, and `fetchAllReviews` also walks the dedicated reviews pages up to `maxReviews` (1-100). Use `minReviewRating` / `maxReviewRating` to target 1-star or 5-star reviews.\n\n**Is the vendor profile included?**\nCapterra's product pages no longer publish vendor location, website or founding year. The vendor name is included when the product was discovered through a category or search listing, where Capterra still exposes it.\n\n**Can I use regional Capterra sites?**\nYes. Product and category URLs on `capterra.co.uk`, `capterra.in`, `capterra.com.au` and other regional domains are accepted and scraped from that domain.\n\n**Why do non-English search terms return loosely related products?**\nSearch uses Capterra's own ranking on `capterra.com`. For the most relevant results use the English product or category name, or paste the product URL from the regional Capterra site instead.\n\n**Is this affiliated with Capterra or Gartner?**\nNo. This is an independent tool that reads publicly available data. It is not operated by, endorsed by, or affiliated with Capterra or Gartner Digital Markets.\n\n## Notes\n\n- Review text is user-generated content. Use it for analysis and do not republish it in a way that misrepresents its authorship.\n- Product pages, category pages and reviews pages are public; the actor does not log in or access account-only data.\n- Capterra page links are public but sit behind a bot challenge, so a plain `curl`/HTTP client can receive a 403. Open page links in a normal browser.\n- Logos and screenshots are served from Capterra's image CDN. Third-party hosted images that reject direct requests (for example G2's CDN) are omitted instead of being emitted as broken links. Video links point to the YouTube/Vimeo pages Capterra publishes.\n",
    "actorDefinition": {
      "actorSpecification": 1,
      "name": "capterra-software-pricing-and-feature-extractor",
      "title": "Capterra Software Pricing & Feature Extractor",
      "description": "Extract Capterra software profiles by URL, name search or category browse: pricing plans, full feature and integration catalogs, ratings, alternatives, FAQs, media, and reviews with reviewer firmographics.",
      "version": "1.0",
      "buildTag": "latest",
      "defaultMemoryMbytes": 4096,
      "minMemoryMbytes": 4096,
      "input": {
        "title": "Capterra Scraper Input",
        "description": "Extract Capterra software profiles (pricing, features, integrations, alternatives, FAQs, media, ratings), browse category listings, search by name, and export reviews. No cookies, API keys or proxy setup needed.",
        "type": "object",
        "schemaVersion": 1,
        "properties": {
          "mode": {
            "title": "Mode",
            "type": "string",
            "description": "What to scrape. Product URLs give the full profile; search queries resolve up to 20 products per query; category URLs walk a ranked category listing.",
            "editor": "select",
            "enum": [
              "byProductUrls",
              "bySearchQueries",
              "byCategoryUrls"
            ],
            "enumTitles": [
              "Scrape product URLs",
              "Search by product or category name",
              "Browse category listings"
            ],
            "default": "byProductUrls",
            "prefill": "byProductUrls"
          },
          "productUrls": {
            "title": "Product URLs",
            "type": "array",
            "description": "Capterra product pages to scrape (mode=byProductUrls). Paste full URLs such as https://www.capterra.com/p/135003/Slack/ , /p/id/slug paths, or compare URLs (both products are expanded). Regional capterra.* domains are accepted.",
            "editor": "stringList",
            "default": [
              "https://www.capterra.com/p/135003/Slack/"
            ],
            "prefill": [
              "https://www.capterra.com/p/135003/Slack/"
            ]
          },
          "searchQueries": {
            "title": "Search queries",
            "type": "array",
            "description": "Product names or category terms to search on Capterra (mode=bySearchQueries), e.g. `Slack`, `project management software`, `CRM`. Capterra returns up to 20 products per query.",
            "editor": "stringList",
            "default": [],
            "prefill": []
          },
          "categoryUrls": {
            "title": "Category URLs",
            "type": "array",
            "description": "Capterra category pages or slugs to browse (mode=byCategoryUrls), e.g. https://www.capterra.com/team-communication-software/ or `team-communication-software`. Use spaces or hyphens in the slug.",
            "editor": "stringList",
            "default": [],
            "prefill": []
          },
          "sortBy": {
            "title": "Category sort",
            "type": "string",
            "description": "Order of products inside a category listing (mode=byCategoryUrls).",
            "editor": "select",
            "enum": [
              "featured",
              "most_reviews",
              "highest_rated",
              "alphabetical"
            ],
            "enumTitles": [
              "Featured (Capterra default)",
              "Most reviews",
              "Highest rated",
              "Alphabetical"
            ],
            "default": "featured",
            "prefill": "featured"
          },
          "maxItems": {
            "title": "Max products",
            "type": "integer",
            "description": "Maximum number of product records to emit.",
            "minimum": 1,
            "maximum": 250,
            "default": 10,
            "prefill": 1,
            "sectionCaption": "Output options",
            "sectionDescription": "Control how many products and how much extra data each record contains."
          },
          "includeReviews": {
            "title": "Include reviews",
            "type": "boolean",
            "description": "Attach the latest reviews that Capterra publishes on the product page. Set false for the smallest possible run.",
            "default": true,
            "prefill": false
          },
          "maxReviews": {
            "title": "Max reviews per product",
            "type": "integer",
            "description": "Maximum reviews attached to each product record (used when Include reviews is on).",
            "minimum": 1,
            "maximum": 100,
            "default": 20,
            "prefill": 5
          },
          "reviewSort": {
            "title": "Review sort",
            "type": "string",
            "description": "How attached reviews are ordered before the per-product limit is applied.",
            "editor": "select",
            "enum": [
              "most_recent",
              "highest_rated",
              "lowest_rated",
              "most_helpful"
            ],
            "enumTitles": [
              "Most recent",
              "Highest rated",
              "Lowest rated",
              "Most helpful (Capterra order)"
            ],
            "default": "most_recent",
            "prefill": "most_recent"
          },
          "minReviewRating": {
            "title": "Minimum review rating",
            "type": "integer",
            "description": "Keep only reviews with at least this star rating. 0 means no minimum.",
            "minimum": 0,
            "maximum": 5,
            "default": 0,
            "prefill": 0
          },
          "maxReviewRating": {
            "title": "Maximum review rating",
            "type": "integer",
            "description": "Keep only reviews with at most this star rating. 0 means no maximum.",
            "minimum": 0,
            "maximum": 5,
            "default": 0,
            "prefill": 0
          },
          "fetchAllReviews": {
            "title": "Fetch more reviews",
            "type": "boolean",
            "description": "Also walk the dedicated reviews pages to collect more reviews than the product page shows, up to Max reviews. Adds one request per review page.",
            "default": false,
            "prefill": false
          },
          "includeAlternatives": {
            "title": "Include alternatives",
            "type": "boolean",
            "description": "Attach the products Capterra lists as alternatives (name, rating, price, URL).",
            "default": true,
            "prefill": false
          },
          "includeFaqs": {
            "title": "Include FAQs",
            "type": "boolean",
            "description": "Attach the product FAQ entries shown on the Capterra profile.",
            "default": true,
            "prefill": false
          },
          "_probeBrowser": {
            "title": "Diagnostic probe",
            "type": "boolean",
            "description": "Internal diagnostic mode. Tests the transport matrix and writes one probe record per combination; no product records are produced.",
            "editor": "hidden",
            "default": false
          },
          "_probeTransport": {
            "title": "Diagnostic probe scope",
            "type": "string",
            "description": "Internal. `full` tests every transport already probed; `auto` tests only the free AUTO datacenter rung.",
            "editor": "hidden",
            "default": "full"
          }
        },
        "required": [
          "mode"
        ]
      },
      "output": {
        "actorOutputSchemaVersion": 1,
        "title": "Capterra Software Pricing & Feature Extractor Output",
        "description": "Capterra software products with pricing plans, feature and integration catalogs, ratings, alternatives, FAQs, media, and reviews.",
        "properties": {
          "items": {
            "type": "string",
            "title": "Dataset items",
            "template": "{{links.apiDefaultDatasetUrl}}/items"
          }
        }
      },
      "dockerfile": "./Dockerfile",
      "readme": "# Capterra Software Pricing & Feature Extractor\n\nTurn Capterra software pages into structured JSON: pricing plans and starting prices, the full feature and integration catalog, alternatives, FAQs, screenshots and videos, ratings with sub-scores and star distribution, review sentiment and topics, reviewer firmographics, and the reviews themselves with pros, cons and vendor replies.\n\nPaste product page URLs, type product or category names, or point it at a ranked category listing. No login, cookies, API key, or proxy setup is required.\n\n## What this actor does\n\n- **Full product profile** - name, description, overview, logo, primary category, all use-case categories, last-updated date\n- **Pricing** - starting price with currency and period, pricing model, free-trial and free-version flags, and every published plan with its included features (or \"contact vendor\" pricing)\n- **Features** - every feature Capterra lists, plus per-feature quality rating, review count, importance percentage and a review-based description where Capterra publishes them\n- **Integrations** - the complete integration list with product links, logos and review counts, plus the total count\n- **Ratings** - overall rating and review count, ease-of-use / value-for-money / customer-support / functionality sub-ratings, 1-5 star distribution, recommendation percentage, review sentiment percentages and mentioned topics\n- **Reviews** - reviewer name, job title, industry, company size and time using the product; overall and sub-ratings; recommendation score; pros, cons and comments; verified and incentive flags; vendor responses\n- **Market context** - alternatives with ratings and prices, FAQs, awards, reviewer company-size / industry / job-function breakdowns\n- **Media** - screenshot URLs and product video URLs\n\nEvery record has `sourceUrl`, `recordType` and `scrapedAt`. A field Capterra does not publish for a product is left out of that record - never emitted as `null`, an empty string, a zero or a placeholder.\n\n## Output per product\n\n- **Identity:** `productId`, `slug`, `name`, `url`, `sourceUrl`, `reviewsUrl`, `siteName`, `recordType`, `scrapedAt`\n- **Profile:** `description`, `overview`, `logo`, `primaryCategory`, `categories[]`, `categorySlugs[]`, `lastUpdated`\n- **Ratings:** `rating`, `reviewCount`, `ratingBreakdown` (`easeOfUse`, `valueForMoney`, `customerSupport` - each with `rating` and `reviewCount`), `ratingDistribution` (stars `1`-`5`), `reviewSentiment` (`positivePercent`, `neutralPercent`, `negativePercent`), `companySizeBreakdown` (`smallBusinessPercent`, `midsizePercent`, `enterprisePercent`), `topIndustries[]` and `topJobFunctions[]` (`name`, `percent`)\n- **Pricing:** `startingPrice`, `priceCurrency`, `pricePeriodicity`, `pricingModel`, `freeTrial`, `freeVersion`, `pricingPlans[]` (`name`, `price`, `priceFormatted`, `priceCurrency`, `pricePeriodicity`, `pricingModel`, `startingPrice`, `attributes`)\n- **Features and integrations:** `featureCount`, `features[]`, `featureDetails[]` (`name`, `description`, `rating`, `reviewCount`, `importancePercent`), `integrationsCount`, `integrations[]`, `integrationDetails[]` (`name`, `url`, `logo`, `productId`, `reviewCount`)\n- **Market context:** `platforms[]`, `useCases[]` (`name`, `slug`), `supportOptions[]`, `trainingOptions[]`, `typicalCustomers[]`, `awards[]` (`name`, `type`, `year`), `pros[]` and `cons[]` (`topic`, `summary`, `mentionCount`, `reviewerName`, `reviewerTitle`, `reviewerQuote`, `sentiment`, `sentimentScore`)\n- **Reviews:** `reviews[]` with reviewer name, job title, industry, company size and time using the product; overall and sub-ratings; recommendation score; pros, cons and comments; verified and incentive flags; vendor responses\n- **Media:** `screenshots[]`, `videos[]`\n\n## Modes\n\n| Mode | Input | What happens |\n|---|---|---|\n| `byProductUrls` (default) | `productUrls` | Scrapes each Capterra product page. Accepts full URLs, `/p/id/slug` paths and compare URLs (both sides are expanded). Regional `capterra.*` domains work. |\n| `bySearchQueries` | `searchQueries` | Searches Capterra for each name or category term and scrapes the products it returns. Capterra returns up to 20 products per query. |\n| `byCategoryUrls` | `categoryUrls` | Walks a ranked category listing page by page and scrapes every product, with an optional sort order. |\n\n## Input\n\n| Field | Type | Default | Description |\n|---|---|---|---|\n| `mode` | select | `byProductUrls` | Which mode to run |\n| `productUrls` | array | Slack product URL | Product pages (mode=byProductUrls) |\n| `searchQueries` | array | `[]` | Names or category terms (mode=bySearchQueries) |\n| `categoryUrls` | array | `[]` | Category pages or slugs (mode=byCategoryUrls) |\n| `sortBy` | select | `featured` | Category order: featured, most reviews, highest rated, alphabetical |\n| `maxItems` | integer | 10 | Maximum products to return (1-250) |\n| `includeReviews` | boolean | true | Attach the reviews Capterra publishes on the product page |\n| `maxReviews` | integer | 20 | Reviews per product (1-100) |\n| `reviewSort` | select | `most_recent` | most_recent, highest_rated, lowest_rated, most_helpful |\n| `minReviewRating` | integer | 0 | Keep reviews at or above this star rating (0 = no minimum) |\n| `maxReviewRating` | integer | 0 | Keep reviews at or below this star rating (0 = no maximum) |\n| `fetchAllReviews` | boolean | false | Walk the reviews pages for more reviews than the product page shows |\n| `includeAlternatives` | boolean | true | Attach the alternatives list |\n| `includeFaqs` | boolean | true | Attach the product FAQs |\n\n### Example: several products by URL\n\n```json\n{\n  \"mode\": \"byProductUrls\",\n  \"productUrls\": [\n    \"https://www.capterra.com/p/135003/Slack/\",\n    \"https://www.capterra.com/p/211559/Trello/\"\n  ],\n  \"includeReviews\": true,\n  \"maxReviews\": 10\n}\n```\n\n### Example: search by name\n\n```json\n{\n  \"mode\": \"bySearchQueries\",\n  \"searchQueries\": [\"project management\", \"CRM software\"],\n  \"maxItems\": 20\n}\n```\n\n### Example: browse a category with reviews filtered to low ratings\n\n```json\n{\n  \"mode\": \"byCategoryUrls\",\n  \"categoryUrls\": [\"https://www.capterra.com/team-communication-software/\"],\n  \"sortBy\": \"most_reviews\",\n  \"maxItems\": 25,\n  \"fetchAllReviews\": true,\n  \"maxReviews\": 30,\n  \"maxReviewRating\": 2\n}\n```\n\n### Example: compare URL\n\n```json\n{\n  \"mode\": \"byProductUrls\",\n  \"productUrls\": [\n    \"https://www.capterra.com/compare/135003-168668/Slack-vs-Microsoft-Teams\"\n  ]\n}\n```\n\nBoth products in the compare URL are scraped as separate records.\n\n## Output example (trimmed)\n\n```json\n{\n  \"productId\": \"135003\",\n  \"slug\": \"Slack\",\n  \"name\": \"Slack\",\n  \"url\": \"https://www.capterra.com/p/135003/Slack/\",\n  \"sourceUrl\": \"https://www.capterra.com/p/135003/Slack/\",\n  \"reviewsUrl\": \"https://www.capterra.com/p/135003/Slack/reviews/\",\n  \"siteName\": \"Capterra\",\n  \"rating\": 4.66,\n  \"reviewCount\": 24266,\n  \"ratingBreakdown\": {\n    \"easeOfUse\": {\"rating\": 4.6, \"reviewCount\": 22799},\n    \"valueForMoney\": {\"rating\": 4.5, \"reviewCount\": 15350},\n    \"customerSupport\": {\"rating\": 4.4, \"reviewCount\": 13607}\n  },\n  \"ratingDistribution\": {\"1\": 48, \"2\": 129, \"3\": 917, \"4\": 5767, \"5\": 17405},\n  \"reviewSentiment\": {\"positivePercent\": 96, \"neutralPercent\": 4, \"negativePercent\": 1},\n  \"startingPrice\": \"$8.75 / month\",\n  \"priceCurrency\": \"USD\",\n  \"pricingModel\": \"Per User\",\n  \"freeTrial\": true,\n  \"freeVersion\": true,\n  \"primaryCategory\": \"Team Communication Software\",\n  \"featureCount\": 105,\n  \"integrationsCount\": 173,\n  \"platforms\": [\"Web-Based\", \"Mac\", \"Windows\", \"Linux\", \"Android\", \"iPhone\", \"iPad\"],\n  \"reviews\": [\n    {\n      \"reviewId\": \"Capterra___7215330\",\n      \"title\": \"Reliable Communication and Collaboration Platform\",\n      \"rating\": 5.0,\n      \"date\": \"2026-09-18\",\n      \"reviewerName\": \"Anbuselvam S.\",\n      \"reviewerJobTitle\": \"LLM Trainer\",\n      \"reviewerCompanySize\": \"10,001+ employees\",\n      \"reviewerIndustry\": \"Information Technology and Services\",\n      \"pros\": \"Slack makes day-to-day communication very easy...\",\n      \"cons\": \"The number of notifications can sometimes become distracting...\",\n      \"recommendScore\": 10.0,\n      \"verified\": true\n    }\n  ],\n  \"recordType\": \"software\",\n  \"scrapedAt\": \"2026-11-09T17:40:00+00:00\"\n}\n```\n\n## Use cases\n\n- **Competitive pricing research** - export every published plan and its included features for a set of rivals\n- **Feature-gap analysis** - compare complete feature and integration catalogs side by side\n- **Voice-of-customer analysis** - pull reviews with pros, cons, sub-ratings and reviewer firmographics\n- **Category mapping** - enumerate a ranked category and track rating / review-count changes over time\n- **Procurement shortlists** - collect alternatives, pricing, deployment options and support channels in one dataset\n\n## FAQ\n\n**Do I need a Capterra account, cookies or a proxy?**\nNo. The actor reads public pages and handles the site's bot challenge automatically. You do not configure a proxy.\n\n**How many products can one run return?**\nUp to 250. A category page lists 25 products and the actor paginates automatically. A search query returns at most 20 products because Capterra's search does not paginate; use several queries for broader coverage.\n\n**Why is a field missing from one product?**\nCapterra does not publish every field for every product. A product without listed pricing has no `startingPrice` or `pricingPlans`; a product with too few recent reviews has no firmographic breakdowns. Missing means \"not published\", never a made-up value.\n\n**How many reviews can I get per product?**\nThe product page carries a batch of recent reviews, and `fetchAllReviews` also walks the dedicated reviews pages up to `maxReviews` (1-100). Use `minReviewRating` / `maxReviewRating` to target 1-star or 5-star reviews.\n\n**Is the vendor profile included?**\nCapterra's product pages no longer publish vendor location, website or founding year. The vendor name is included when the product was discovered through a category or search listing, where Capterra still exposes it.\n\n**Can I use regional Capterra sites?**\nYes. Product and category URLs on `capterra.co.uk`, `capterra.in`, `capterra.com.au` and other regional domains are accepted and scraped from that domain.\n\n**Why do non-English search terms return loosely related products?**\nSearch uses Capterra's own ranking on `capterra.com`. For the most relevant results use the English product or category name, or paste the product URL from the regional Capterra site instead.\n\n**Is this affiliated with Capterra or Gartner?**\nNo. This is an independent tool that reads publicly available data. It is not operated by, endorsed by, or affiliated with Capterra or Gartner Digital Markets.\n\n## Notes\n\n- Review text is user-generated content. Use it for analysis and do not republish it in a way that misrepresents its authorship.\n- Product pages, category pages and reviews pages are public; the actor does not log in or access account-only data.\n- Capterra page links are public but sit behind a bot challenge, so a plain `curl`/HTTP client can receive a 403. Open page links in a normal browser.\n- Logos and screenshots are served from Capterra's image CDN. Third-party hosted images that reject direct requests (for example G2's CDN) are omitted instead of being emitted as broken links. Video links point to the YouTube/Vimeo pages Capterra publishes.\n",
      "storages": {
        "dataset": {
          "actorSpecification": 1,
          "views": {
            "overview": {
              "title": "Products",
              "transformation": {
                "fields": [
                  "name",
                  "primaryCategory",
                  "rating",
                  "reviewCount",
                  "vendorName",
                  "url"
                ]
              },
              "display": {
                "component": "table",
                "properties": {}
              }
            }
          }
        }
      }
    },
    "buildNumber": "1.0.2",
    "imageDigest": "6781b4f54c9c921267cbe610216d1ffa708b36d4a10967bbb47f84d3483b55bc",
    "actVersion": {
      "sourceType": "SOURCE_FILES",
      "buildTag": "latest",
      "versionNumber": "1.0"
    },
    "usage": {
      "ACTOR_COMPUTE_UNITS": 0.11702444444444444
    }
  }
}