AppSumo Software Scraper - SaaS Deals Data avatar

AppSumo Software Scraper - SaaS Deals Data

Pricing

from $2.00 / 1,000 results

Go to Apify Store
AppSumo Software Scraper - SaaS Deals Data

AppSumo Software Scraper - SaaS Deals Data

Export individual AppSumo product cards with names, product URLs and their own summaries. Excludes review links and preserves browse redirects.

Pricing

from $2.00 / 1,000 results

Rating

0.0

(0)

Developer

Ben

Ben

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

AppSumo Software Scraper

Collect the products shown on an AppSumo browse page without turning review links into extra products. Each row keeps the product name, its item URL and the summary inside that product’s card.

Start with the saved example

Open the public example to inspect its input and output fields. Run a bounded request and open its dataset to see the returned records.

{
"searchUrls": [
"https://appsumo.com/software/"
],
"maxResults": 3
}

The saved input requests /software/, which redirected to /browse/ in the September 11 capture. That response contained cards for TidyCal, The Hostinger Bundle and ZeroRank AI at the start of this three-row sample. The source order is a browse-page observation, not a ranking of sales, quality or adoption.

What the fields mean

A product card can include several review-count links for different screen sizes. They point to the same product with a #reviews fragment. The Actor excludes those links and keeps the main product card once. Its description comes from the card’s short summary, without the neighboring product’s text, review count or price label.

The Actor requests the supplied page over HTTP. It does not sign in, execute page JavaScript, scroll, open product details or make purchases. Browser-only content may therefore differ from the fetched response. Increasing the result cap cannot recover records that are absent from that response.

Dated output example

This record comes from the September 11, 2026 source capture. Keep the source wording and its observation date together when reusing it.

{
"source": "appsumo-software-scraper",
"kind": "software",
"index": 1,
"title": "TidyCal",
"url": "https://appsumo.com/products/tidycal/",
"description": "Book clients, sell packages, collect payments, and build your brand with one scheduling tool",
"input_url": "https://appsumo.com/software/",
"source_url": "https://appsumo.com/browse/"
}
FieldMeaning
titleSoftware/product name on the individual card.
urlAbsolute source item URL.
descriptionProduct-card summary, or null when absent.
source, kindExisting source and record-type identifiers.
indexOne-based position among accepted records for this input URL.
input_url, source_urlRequested URL and final fetched URL after redirects.
company, rawOptional original structured-response fields; not inferred from a card.

Download JSON to retain nulls and optional fields. CSV or Excel can support a manual shortlist. Save the run or dataset ID with each export, because page URLs alone do not identify its collection time. A typed field describes the output contract; it does not guarantee that a source supplies every optional value.

Input limits and repeated collection

searchUrls is the list of source URLs to request. maxResults applies separately to each URL, from 1 to 1,000; the schema default is 25. Two URLs with a limit of three can return up to six records. The Actor removes duplicate item URLs within each response and keeps the first accepted occurrence. The same item in different requested pages can appear more than once, preserving each page’s provenance.

There is no automatic pagination or cross-run state. Save dated exports separately when comparing changes. Match exact item URLs within the same source and keep your internal notes outside the source-text fields. A changed title or missing row in a capped response is a review question, not automatic evidence of a product launch or removal.

Pricing

Charges apply to exported rows plus the existing memory-based Actor start event. Current result charges per 1,000 rows are:

PlanResult charge per 1,000
Free$2.5
Bronze$2.25
Silver$2.125
Gold$2
Platinum$1.875
Diamond$1.75

The Free start rate is $0.00005 per GB with a one-unit minimum; paid plans retain their existing discounts. The unchanged 4,096 MB default uses four start units. The Pricing tab shows the current terms. Set a total charge cap for bounded runs; requesting fewer results limits output, not the full source response download.

Questions before using the export

Does it export AppSumo deal prices? No. This version exports names, product URLs and card summaries. It does not parse currency, lifetime terms, discounted prices, seat limits or license-tier details. The Actor’s own Pricing tab concerns extraction charges, not the price of an AppSumo product.

Why is source_url different from input_url? AppSumo redirected the saved /software/ input to /browse/. The original request and final response address stay separate. That successful sample does not independently establish category filtering for every historical URL.

Can a bundle appear in a software list? Yes. The captured browse page includes The Hostinger Bundle. Preserve the source title instead of assuming each row represents a single application or a single license. Follow the product page to inspect the current offer.

Do review counts establish product quality? This Actor does not export them. A repeated review link is excluded rather than treated as another product. If your evaluation requires verified reviews or purchase terms, inspect the relevant source page separately.

Can I tell whether a deal ended from a missing row? No. A limited browse response can change its ordering, promotions or available cards. Keep earlier observations and check the original product URL before concluding that a deal is unavailable.

What happens when a page fails? Failed fetches fail the run, while rows already saved from earlier URLs remain available. Inspect the final status and server log before treating a multi-URL export as complete. A nonempty dataset can still be partial.

Can I schedule collection? Apify supports saved Tasks, schedules, webhooks and dataset APIs. Check a small real example before enabling recurring work. The Actor itself does not retain comparisons, send alerts or decide whether a downstream import should overwrite an older snapshot.

What if the page layout changes? A page without recognized cards can return no rows. Inspect the final source URL and report a reproducible issue with the public input and run ID. Never include credentials or private account data in a public issue.

May I reuse the text? Keep source attribution and respect applicable terms and rights. The export records source statements; it does not transfer ownership or validate their accuracy. Use your own evaluation for purchasing, compatibility and compliance decisions.

GitHub Marketplace Scraper collects developer-app listings from a different catalog. Keep its source identity separate when comparing products.

The software-catalog identity guide explains why matching names and shared websites do not establish a single product identity across platforms. Its downloadable offline example needs no new extraction run.

The browse-capture comparison uses two verified AppSumo samples to preserve earlier observations when the limited browse list changes.

Keywords: AppSumo software, AppSumo browse products, SaaS deal directory, product cards, product names, card summaries, product URLs, JSON export, CSV export.