ยท 18 min read
There's An AI For That Scraper: 65 Data Fields per Record (2026)
Each record from There's An AI For That Scraper carries up to 65 output fields, including tool ID, name, full description, pricing, website link, and engagement stats like views and saves. This Actor extracts listings and full detail pages from theresanaiforthat.com, offering 17 distinct browsing modes. You can try it free: Apify's free plan includes $5.00 of monthly usage, covering up to 1,000 results of this Actor before run-start charges. This is ideal for market researchers, content curators, and lead generation specialists who need fresh data on AI tools. It is not for anyone who needs independently verified pricing, as the records reflect self-reported figures directly from the tool makers.
Try it: open There's An AI For That Scraper on Apify, sign in on the free plan and run the prefilled example.
Can you try There's An AI For That Scraper before paying?
Yes. Apify's free plan includes $5.00 of prepaid usage every month and asks for no credit card. At $0.005 per result, that covers up to 1,000 results of There's An AI For That Scraper a month, before run-start charges and platform usage.
There's An AI For That Scraper was last updated on 2026-08-10. It is one of 1,724 Actors CrawlerBros publishes on Apify, which together have 722,845 lifetime public runs and an average rating of 4.63 out of 5 across 416 reviews.
What does it cost to run There's An AI For That Scraper?
Each result costs $0.005 on Apify's free plan, which is $5.00 per 1,000 results. Starting a run is charged separately at $0.005 per GB of Actor memory. Apify also bills the platform usage each run consumes, at the rates of your Apify plan, on top of these charges.
| Apify plan | Per result | Per 1,000 results |
|---|---|---|
| FREE | $0.005 | $5.00 |
| BRONZE | $0.00433 | $4.33 |
| SILVER | $0.00367 | $3.67 |
| GOLD | $0.003 | $3.00 |
| PLATINUM | $0.003 | $3.00 |
| DIAMOND | $0.003 | $3.00 |
The primary control influencing your bill is maxItems, which directly limits how many results are written to your dataset. If you are browsing a mode like 'category' or 'timeline', where the Actor paginates automatically, setting a high maxItems will increase the number of results. For a preliminary exploration, start with a small maxItems value (e.g., 10-30) to retrieve a sample and understand the output structure before scaling up to larger runs. Remember, the free-plan price is $5.00 per 1,000 results.
How do you run There's An AI For That Scraper from the API?
The schema marks 1 of its 12 controls as required: mode. Every value in the payload below comes from the published schema's own prefills, which means you can paste it, swap the token, and get a real result.
Call the synchronous endpoint to start a run and receive dataset items in one request:
curl -X POST "https://api.apify.com/v2/acts/crawlerbros~theresanaiforthat-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"mode":"category"}'
The same run from Python, using the official client:
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run_input = {
"mode": "category"
}
run = client.actor("crawlerbros~theresanaiforthat-scraper").call(run_input=run_input)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)
And from Node.js:
import { ApifyClient } from 'apify-client'
const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' })
const input = {
"mode": "category"
}
const run = await client.actor('crawlerbros~theresanaiforthat-scraper').call(input)
const { items } = await client.dataset(run.defaultDatasetId).listItems()
console.log(items)
That endpoint blocks until the run completes. Fine while you are testing a handful of records, risky once a run takes minutes: a dropped connection loses the response even though the run itself finished. Switch to an asynchronous start with polling or a webhook before you schedule anything.
Which There's An AI For That Scraper inputs matter, and which can you skip?
The mode control is central to operating this Actor, determining whether you browse by category, company, or fetch tool details. The other 11 optional controls configure the chosen mode. For an initial run, select a mode like 'category' and a common categorySlug, leaving most other settings at their defaults. The maxItems control is useful for controlling the scope of your data collection. When fetching tool details, use the toolSlugs array to specify the exact tools you need, rather than relying on broader browsing modes.
mode(string): Which listing / lookup to run. Default:"category".categorySlug(string): AI tool category/task to browse. PickCustom / other category slugand fillcustomCategorySlugbelow to use any of the site's 1000+ granular task slugs not listed here. Default:"writing".customCategorySlug(string): Exact category slug from a theresanaiforthat.com URL, e.g.text-to-speechfromtheresanaiforthat.com/task/text-to-speech/.sortBy(string): How to order tools within the chosen category. Only applies to mode=category. Default:"default".companySlug(string): Maker/company slug from a theresanaiforthat.com URL, e.g.nvidiafromtheresanaiforthat.com/company/nvidia/. Default:"nvidia".listUrl(string): URL of a user-curated tool list/collection page, e.g.https://theresanaiforthat.com/@ytdescriptionextractor/saved-for-later/(a bare@user/list-slugpath also works). Default:"https://theresanaiforthat.com/@ytdescriptionextractor/saved-for-later/".leaderboardYear(string): Which yearly cohort of the AI Tool Rankings leaderboard to fetch.currentalways tracks whatever year theresanaiforthat.com/leaderboard/ currently shows (its default). Default:"current".miniToolsSort(string): Which ranking of the free, embedded Mini Tools (in-site AI generators under/@user/<slug>/) to browse. Default:"all".featureSlug(string): Cross-category feature/capability to browse, e.g. tools with an API, MCP support, or no-signup access. Cards can belong to any task category. Default:"api".toolSlugs(array): AI tool slugs from theresanaiforthat.com/ai// URLs, e.g.canva-magic-write. Default:["canva-magic-write"].characterCategory(string): Quick-filter mood tab for browsing AI Characters.allbrowses every character. Default:"all".maxItems(integer): Hard cap on emitted records (ignored for mode=toolDetail, which is capped by the number of tool slugs given). mode=category, mode=feature, mode=timeline, and mode=characters paginate through additional result pages automatically until this cap is reached or the listing runs out of entries; other listing modes are backed by a single page on theresanaiforthat.com. Default:30.
Fixed-choice controls: mode accepts 17 values (default category), including category (Browse by category), mostSaved (Browse most-saved AI tools), justReleased (Browse just-released AI tools), popular (Browse popular AI tools); categorySlug accepts 70 values (default writing), including writing, chatbots, images, videos; sortBy accepts default (TAAFT ranking), latest, top-rated (Top rated), most-saved (Most saved), popular, price; leaderboardYear accepts current (Current year (site default)), 2024, 2025, 2026; miniToolsSort accepts all, topRated (Top rated), new; featureSlug accepts 24 values (default api), including api, agents, ai-search (AI Search), assistant; characterCategory accepts all, battle, cry, friend, teacher, wildcard.
What does There's An AI For That Scraper return?
The returned records are suitable for comprehensive market analysis of AI tools, building curated lists, or identifying potential partners through company information. Each record includes granular details such as pricingSummary, websiteUrl, and various engagement statistics. However, these records do not contain independently verified pricing information; they reflect what is self-reported on theresanaiforthat.com. Records for mode=characters also contain characterUrl and for mode=timeline contain taskName, which are unique to those content types.
toolId- TAAFT's internal numeric ID for the tool (listing modes)name,toolUrl- TAAFT detail-page URL (always present)slug- only present whentoolUrlis a genuine/ai/<slug>/tool page; TAAFT also lists user-submitted "mini tools" under/@username/...and/gpt/...paths, which omitslugsince it isn't a valid input formode=toolDetailon thoseshortDescription(listing modes) ordescription(detail mode, full overview)category,categorySlug,categoryPath[](detail mode - full breadcrumb, e.g.Creativity > Text > Writing)applicationCategory(detail mode - schema.org software-application category TAAFT publishes in the page's structured data, e.g."Multimedia", only when present)pricingSummary(e.g."100% Free","Free + from $8/mo","From $19/mo")websiteUrl- the tool's actual website (outbound link)iconUrl,screenshotUrl(detail mode)viewsCount,savesCount,averageRating,reviewsCount(detail modereviewsCount/averageRatingonly when the tool has reviews) - TAAFT community engagement statscommentsCount(detail mode - number of user comments on the tool page, only present when the tool has at least one)rank(mode=popular/trendingonly - integer leaderboard position, 1 = top)releasedRelative(e.g."2y ago", listing modes only),dateCreated,dateModified(detail mode)sponsored(listing modes -trueif the card is a paid placement; alwaystruein mode=featured)verified(listing modes -trueif the tool has been claimed by its owner),hasVideo(listing modes -trueif the card has a video demo)discontinued,discontinuedMonth(mode=discontinuedonly -true, and theYYYY-MMmonth TAAFT recorded the tool as shut down, e.g."2023-10")dealOffer(mode=deals, and occasionally other listing modes for a sponsored card - the special-offer badge text, e.g."๐ท๏ธ 20% OFF","๐ฐ $500 CREDITS","๐ Save $60")listName,listAuthor(mode=listonly - the curated list's title and the TAAFT username who made it)version(mode=leaderboardonly - the tool's version tag shown on the ranking, e.g."v2.0", only when TAAFT tracks one)netVotes,upvotes,downvotes(mode=leaderboardonly - the community leaderboard's vote counts for that tool)usersCount,topCommentAuthor,topCommentText,topCommentUpvotes,topCommentDownvotes(mode=miniToolsonly - usage count and the tool's top user comment, when it has one)featureSlug(mode=featureonly - the feature/capability being browsed, e.g."api","mcp")date,taskName,taskSlug,toolName,toolWebsiteUrl(mode=timelineonly - the AI Capabilities Timeline's task/tool pairings;recordType: "timelineEntry"instead of"aiTool")characterUrl,authorSlug,tagline,totalChats(mode=charactersonly - the user-submitted AI companion/roleplay character's own page, its creator's TAAFT username, its one-line tagline, and its total chat count;recordType: "aiCharacter"instead of"aiTool")tags[](detail mode - keyword/use-case tags TAAFT assigns to the tool)features[](detail mode - TAAFT's "Supported features" capability chips, e.g.["Realism", "Memory", "Web browsing"], only when the tool has this widget)companyName,companySlug,country,countryCode(detail mode - the maker company and where it's based, only when TAAFT has this on file)domainRating,monthlyTraffic(detail mode - the tool's own website's SEO domain rating (0-100) and estimated monthly traffic, e.g."759.8M", only when TAAFT has this on file)inputModalities[],outputModalities[](detail mode - e.g.["Text"]/["Image", "Video"], only when TAAFT documents the tool's input/output types)pricingModel,priceFrom,billingFrequency,refundPolicy(detail mode - TAAFT's structured pricing breakdown, e.g."Freemium","$20/month","Monthly","No Refunds")recordType: "aiTool"(or"miniTool"for mode=miniTools,"timelineEntry"for mode=timeline,"aiCharacter"for mode=characters),scrapedAt
These are the documented fields. Optional ones can be empty on a given record, so measure how often each field your deliverable depends on is populated across a real sample before automating the handoff.
How do you build the workflow end to end?
Open There's An AI For That Scraper and work through these in order. Each step ends with something to check, so a bad configuration surfaces on a small run rather than a scheduled one.
- Start by setting mode to 'category' and categorySlug to a common category like 'writing'. Set maxItems to a small number, like 10, to get a quick sample of the output.
- Examine the initial records in the dataset. Pay close attention to fields like pricingSummary, websiteUrl, and any engagement stats like viewsCount or savesCount to ensure they are present and correctly formatted for your needs.
- If fetching detailed information, change mode to 'toolDetail'. Populate the toolSlugs array with a few slugs from your initial category run. Verify that description and any specific detail-mode fields are returned as expected.
- For broader discovery, experiment with different modes such as 'mostSaved', 'justReleased', or 'trending'. Compare the output structure and the types of tools returned to refine your data collection strategy.
- When using 'category' mode, test the sortBy control. Run a small batch with sortBy set to 'latest' and another with 'top-rated' to understand how the order of results changes.
- For custom category browsing, set categorySlug to 'custom' and provide a customCategorySlug from a theresanaiforthat.com URL, such as 'text-to-speech'. Confirm that tools from that specific category are returned.
- If you need to identify tools by a specific maker, set mode to 'company' and provide a companySlug like 'nvidia'. Check that all returned tools are indeed from the specified company.
- Increase maxItems gradually for your chosen mode and configuration. Monitor the run time and the number of results to ensure performance is acceptable for your larger data collection goals.
How do you apply it? Three worked playbooks
These are There's An AI For That Scraper's own documented use cases, each worked through as an operating pattern rather than a description.
Use case 1: Market research
Outcome: Track which AI tools are trending in a given category
Configure: Set mode to 'category'. Select a relevant categorySlug, such as 'seo-content'. Set sortBy to 'trending'. Define maxItems to limit the number of results per run, e.g., 50.
Working method: Begin by running the Actor for a single category with a small maxItems value. Review the output to understand the types of tools and the 'rank' field. Schedule regular runs, perhaps weekly, and compare the 'rank' for tools over time to observe trends within your chosen categories.
Deliverable: A series of weekly datasets, each containing a list of AI tools ranked by their trending status in a specific category, with fields such as name, category, pricingSummary, and rank.
Stop condition: The 'rank' field is consistently null for trending tools, or the dataset returns an empty array for a category that previously had results.
Use case 2: Content curation
Outcome: Build "best AI tools for X" roundups with fresh, real engagement data
Configure: Set mode to 'toolDetail'. Populate toolSlugs with specific AI tools you are curating. Alternatively, use listing modes like 'mostSaved' or 'top-rated' in 'category' mode with a categorySlug like 'writing' to discover tools. Set maxItems as needed.
Working method: Start with 'mostSaved' or 'top-rated' in a relevant category to identify potential tools. Then, switch to 'toolDetail' mode, passing the slugs of selected tools to gather their full descriptions, website URLs, icons, and engagement stats (viewsCount, savesCount, averageRating). Consolidate this data to inform your roundup content.
Deliverable: A curated list of AI tools, each with its full description, pricing summary, website URL, icon, and up-to-date engagement metrics (viewsCount, savesCount, averageRating, reviewsCount) suitable for a 'best-of' article.
Stop condition: The description field or engagement statistics (viewsCount, savesCount) are frequently missing or incorrect for tools known to have them, indicating an issue with detail page parsing.
Use case 3: Lead generation
Outcome: Find AI tool makers (via company mode) for partnership or outreach
Configure: Set mode to 'company'. Provide a specific companySlug, like 'nvidia', or use 'category' mode to browse broader categories and identify potential companies from tool records. Limit maxItems per run to manage data volume.
Working method: To find companies, first identify tools of interest through 'category' or 'mostSaved' modes. Then, use 'toolDetail' mode for those tools to extract the companyName and companySlug. Once you have a companySlug, switch to 'company' mode with that slug to list all tools by that maker, and extract websiteUrl for outreach. This helps focus your lead generation efforts.
Deliverable: A spreadsheet or database of AI tool makers, including companyName, companySlug, and the websiteUrl of their tools, suitable for generating leads for partnerships or direct outreach.
Stop condition: Records consistently lack companyName or websiteUrl, or 'company' mode returns unrelated tools for a given companySlug.
What breaks, and how do you design around it?
The maxItems input has a maximum of 500 for listing modes; you should break down large data extraction tasks into multiple runs. For instance, instead of trying to get all tools from a very broad category at once, try narrowing down customCategorySlugs or using different sortBy options to split the work across several runs. For mode=toolDetail, split your toolSlugs array into multiple smaller batches and run them sequentially, consolidating the results later, as maxItems is ignored for this mode. Keep an eye on platform usage beyond the per-result charges, as large numbers of items can consume more resources.
When should you not use There's An AI For That Scraper?
This Actor is not suitable if your primary need is real-time, independently verified pricing information. The pricingSummary field reflects self-reported data directly from the tool makers on theresanaiforthat.com and is not validated by CrawlerBros. If you require verified pricing, consider using a specialized price comparison Actor like the Vercel Domain Scraper, which leverages an official API for domain pricing, or sourcing data directly from each tool's website with a custom Actor. Similarly, if your goal is to acquire direct contact information for AI tool makers beyond what's publicly available on their websites, this Actor will not fulfill that. You would need a dedicated lead generation tool that focuses on extracting emails or phone numbers, or an Actor that targets business directories specifically designed for contact information, such as the Imenik.eu Croatia Business Directory Scraper or the moveBuddha Moving Company Directory Scraper. This Actor is also not ideal for deep analysis of site internal linking or structure; for that, an Actor like Website Links Graph Generator would be more appropriate.
What should you check before trusting the output?
- Check that websiteUrl is present and a valid URL in all records, as tools without a direct link might not be useful for outreach.
- Verify that pricingSummary has a consistent format; inconsistent values or missing summaries might require additional parsing or filtering.
- For records from listing modes, ensure that shortDescription is present and not truncated, especially if you plan to use it for initial filtering.
- In 'toolDetail' mode, confirm that the full description field is populated and complete, as this is crucial for rich content curation.
- Examine viewsCount and savesCount for consistency; unusually low or zero values across many results could indicate a data capture issue or a less active tool.
- Confirm that the recordType field correctly identifies 'aiTool', 'miniTool', 'timelineEntry', or 'aiCharacter' based on the mode you selected.
None of this proves a record is correct. It gives a scheduled There's An AI For That Scraper run defined points where it should stop instead of quietly passing bad data downstream.
Frequently asked questions
What is the cost per 1,000 results for this Actor?
On Apify's free plan, the cost is $5.00 per 1,000 results. This price applies to results written to the dataset. Remember that Apify also bills platform usage each run consumes, on top of these per-result charges. To estimate costs, consider the maxItems input, as it directly controls the number of results generated.
Does this Actor scrape more than one page of results?
Yes, for modes like 'category', 'feature', 'timeline', and 'characters', the Actor automatically paginates through additional result pages until the maxItems limit is reached or the listing is exhausted. Other listing modes, such as 'mostSaved' or 'popular', typically render their entire result set on a single page, so setting a higher maxItems for these will simply return all available items from that initial page.
Why would I use the 'custom' option for categorySlug?
There's An AI For That has over 1,000 granular task categories, but the categorySlug dropdown in the input schema only lists about 70 of the most common ones. If you need to browse a specific, more niche category not in the dropdown, you can select 'custom' and then provide the exact category slug (e.g., 'text-to-speech') from the theresanaiforthat.com URL in the customCategorySlug field.
What kind of engagement data is available for AI tools?
When fetching full tool details in 'toolDetail' mode, the Actor can return several engagement statistics. These include viewsCount, savesCount, averageRating, and reviewsCount. For 'miniTools' mode, records carry usage stats like usersCount and, where present, details on the tool's top user comment.
When should I use 'mode=toolDetail' versus a listing mode?
Use 'mode=toolDetail' when you need comprehensive information for specific AI tools whose slugs you already know. This mode fetches the full detail page and provides richer data like the complete 'description', 'screenshotUrl', 'tags[]', and 'pricingModel'. Listing modes (e.g., 'category', 'mostSaved', 'popular') are for discovering tools based on broader criteria, returning a 'shortDescription' and essential identifying information, but not the full detail set.
Where to go next
When you are ready to run it, open There's An AI For That Scraper on Apify; the free plan covers up to 1,000 results a month.
Start with the There's An AI For That Scraper Actor page for the current input schema, pricing tier, and run history.
Other Actors we maintain for related data:
- Mailchimp Integrations Directory Scraper: Scrape live n8n.io workflow templates that integrate with Mailchimp.
- Imenik.eu Croatia Business Directory Scraper: Scrape Imenik.eu, Croatia's business directory.
- moveBuddha Moving Company Directory Scraper: Scrape moveBuddha.com's ranked moving-company directory by city, state, or interstate route.
- Website Links Graph Generator: Creates an oriented graph visualizing links between webpages.
- Vercel Domain Scraper: Check domain-name availability and pricing across TLDs using Vercel's official Registrar API.
Related guides:
- Imenik.eu Croatia Business Directory Scraper: $5.00 per 1,000 Results
- Website Links Graph Generator: Up to 2,500 Free Results a Month (2026)
Resources
Actor documentation, input schema, and pricing: verified against the published Actor on 2026-10-02.
Actor last updated by its maintainers on 2026-08-10.
Run outcome figures cover the 30 day public window ending 2026-10-02.
Featured actors
There's An AI For That Scraper
Scrape There's An AI For That (theresanaiforthat.com) - the #1 AI tool directory. Browse AI tools by category, most-saved, just-released, popular, or by maker company, plus fetch full tool detail pages with descriptions, pricing, and stats.
Run on Apify โ