BetaList Scraper: New Startups, Emails and Founder Contacts ยท Apify
BetaList Scraper | Startups, Websites and Contacts avatar

BetaList Scraper | Startups, Websites and Contacts

Pricing

from $0.38 / 1,000 startups

Go to Apify Store
BetaList Scraper | Startups, Websites and Contacts

BetaList Scraper | Startups, Websites and Contacts

BetaList scraper for new startup launches: search by keyword, topic, category or featured date and get each startup with its real website, emails, phone and social profiles, plus makers, topics and description. 20 startups in 12 seconds, 21 fields each. Build 2026 lead lists, no BetaList account.

Pricing

from $0.38 / 1,000 startups

Rating

0.0

(0)

Developer

SilentFlow

SilentFlow

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Features

Limited permissions

Share

BetaList Startup Scraper | New Startup Launches with Websites, Emails and Social Profiles (2026)

BetaList startups, 21 fields each, from any topic.

From SilentFlow. Creators of Facebook Search Scraper and JD Products Scraper (#1 for โ€œjd scraperโ€ in Apify Store search), with 940,000+ combined lifetime runs.

Turn BetaList's daily startup launches into a lead list you can act on: find startups by keyword, topic, category or featured date, and get each one with its real website, the emails it publishes and its social profiles. 20 SaaS startups in 11 seconds in our test, 14 of them with an email.

Why choose this actor?

Copying BetaList startups one by one, clicking "Visit Site", then digging through each homepage for an email? Looking for the CRM or invoicing startups, without knowing their names? Want the startups that launched last week, or in March 2024, and nothing else?

  • Find startups by what they do. Type a keyword such as crm and get the BetaList startups that match it, across BetaList's history since 2010: 30 matching startups in 28 seconds in our test, each read in full with its website contacts. No need to crawl the full catalog or to collect startup links by hand first.
  • Pull this week's launches, or any past week. Set a featured date window and the run keeps only the startups BetaList featured in it. "Last 3 days" gave 30 startups in 16 seconds, all featured between 8 and 10 November 2026. For 4 and 5 March 2024, the run went straight to that day of the feed and returned the 11 startups of those two days in 13 seconds.
  • Reach the founders: real website, emails and social profiles. Every row carries the startup's own address, not a BetaList redirect, plus the emails, phone and X, LinkedIn, Facebook, Instagram, YouTube, TikTok and GitHub profiles its website publishes. On our SaaS run, 20 of 20 rows had the website, 14 had an email, 8 an X profile and 7 a LinkedIn page; on the 3-day run, 23 of 30 had an email. Each row also says whether the website still answers: on a crm search reaching back to 2015, 14 of 30 startups had a site that is gone, flagged so you drop them before outreach.

Try BetaList Scraper free

Try your first startup

Paste this input and press Start. It reads the 20 newest startups of BetaList's SaaS topic, opens each startup's website and adds its public contacts.

{
"topics": ["SaaS"],
"maxItems": 20,
"includeContacts": true
}

The Apify Free plan is enough to try it: this run took 11 to 13 seconds in our tests and gives you a table you can download as JSON, CSV or Excel, or open in Google Sheets.

How it works

Copy to your AI assistant

Paste this block into Claude, ChatGPT or Cursor so it knows how to use this actor:

You have access to the BetaList Scraper on Apify: silentflow/betalist-scraper
What it does: reads startups from BetaList (betalist.com), the directory of early-stage
and pre-launch startups, then reads each startup in full and, by default, its own website
for public contacts. One dataset row per startup.
Input (all optional; with no keyword, topic or link it reads the latest startups feed):
- searchQueries (array of strings): keywords typed in BetaList search, such as "crm",
"fintech". Results come in relevance order, across BetaList's history since 2010.
- topics (array of strings): topic names or slugs ("SaaS", "Generative AI", "fintech"),
category names ("AI", "Finance", "Dev Tools", "Marketing"; a category reads all its topics,
newest first), or BetaList topic and category links.
- startUrls (array of {"url": "..."}): BetaList startup pages (https://betalist.com/startups/parroli),
topic pages (https://betalist.com/browse/ai/generative-ai), category pages
(https://betalist.com/browse/finance), searches (https://betalist.com/search?q=crm),
regions (https://betalist.com/regions/france), maker profiles (https://betalist.com/@everygenai)
or the latest feed (https://betalist.com/startups).
- featuredAfter (string): first featured day kept, "2026-11-01" or a span such as "7 days".
- featuredBefore (string): last featured day kept, included, "2026-10-31".
- maxItems (integer, default 50): total startups for the run.
- includeContacts (boolean, default true): open each startup's website for emails, phone
and social profiles.
- resumeCursor (array of dataset IDs): datasets of earlier runs of this actor. The startups
they delivered are skipped, not read nor charged again, and the run continues with the rest.
Output per startup (30 fields):
- id (integer, BetaList startup id), slug (string), url (string, BetaList page), name (string),
tagline (string or null)
- description (string or null, paragraphs separated by blank lines), topics (array of strings),
categories (array of strings), makers (array of {name, username, profileUrl, avatarUrl}),
isBoosted (boolean)
- website (string or null, the startup's own address), websiteDomain (string or null),
isWebsiteLive (boolean or null)
- email (string or null, first email, own domain first), emails (array of strings),
phone (string or null), twitterUrl, linkedinUrl, facebookUrl, instagramUrl, youtubeUrl,
tiktokUrl, githubUrl (strings or null)
- location (string or null), featuredAt (RFC 3339 UTC, the day BetaList featured the startup)
- logoUrl, imageUrl (strings or null), screenshots (array of strings)
- foundBy (string: "latest", "topic:saas", "category:ai", "search:crm", "url:parroli"...),
scrapedAt (RFC 3339)
Use apify-client for Python or JavaScript, or the Apify API, to run it and read the dataset.

How to scrape BetaList startups

Get this week's new startups

Leave the keyword, topic and link fields empty and set a start date: the actor reads BetaList's latest startups feed and stops at the first startup featured before your date.

{
"featuredAfter": "7 days",
"maxItems": 100
}

Build a lead list of new fintech startups with emails

A topic name is enough. The run reads the topic newest first, keeps the last month, and adds the website contacts of each startup.

{
"topics": ["Fintech"],
"featuredAfter": "1 month",
"maxItems": 100,
"includeContacts": true
}

Combine keywords, a category and a date

Every source runs in the same run, and a startup found by two of them is delivered once.

{
"searchQueries": ["crm"],
"topics": ["Sales"],
"featuredAfter": "2026-01-01",
"maxItems": 200
}

Input parameters

ParameterTypeDefaultWhat it does
searchQueriesarray of stringsnoneKeywords typed in BetaList search. Up to 60 best matches per keyword, by relevance, from 2010 to today.
topicsarray of stringsnone (prefilled with SaaS)Topic names, slugs or links, and category names. A category reads all of its topics, newest startups first.
startUrlsarray of linksnoneBetaList startup, topic, category, search, region, maker and latest feed pages.
featuredAfterdate or spannoneFirst featured day to keep, included: 2026-11-01, 7 days, 2 weeks, 1 month.
featuredBeforedate or spannoneLast featured day to keep, included.
maxItemsinteger50Total startups for the run, across every keyword, topic and link.
includeContactsbooleantrueOpen each startup's website and add its emails, phone and social profiles, and whether it is still online.
resumeCursorlist of datasetsnoneDatasets of earlier runs of this actor. The startups they delivered are skipped and not charged again; the run continues with the rest.

With every field empty, the actor reads the latest startups feed, the list BetaList shows on its front page.

Topics and categories

  • Topics are BetaList's fine-grained tags, such as SaaS, Generative AI, Fintech, Productivity Tools or Remote Work. Type the name as BetaList shows it (Generative AI), its slug (generative-ai), or paste the topic page link. A name BetaList does not know is named in the run log and the run carries on with the rest.
  • Categories group the topics: AI, Commerce, Customer Support, Data & Analytics, Design & Creative, Dev Tools, Education, Energy & Environment, Finance, Government & Defense, Hardware, Health, HR & Recruiting, Industrial, Legal, Marketing, Media & Content, Productivity, Sales, Security & Privacy, Social & Community, Travel & Hospitality. A category reads every one of its topics and merges them into one list, newest startup first.
  • Startup pages: https://betalist.com/startups/parroli. The startup is read in full. Startup links always run first, so a low maxItems never leaves them out.
  • Topic and category pages: https://betalist.com/browse/ai/generative-ai, https://betalist.com/browse/finance, and old topic links such as https://betalist.com/topics/fintech.
  • Searches: https://betalist.com/search?q=crm.
  • Regions: https://betalist.com/regions/france, https://betalist.com/regions/united-states. BetaList filed startups by country in its earlier years, so region pages list mostly older startups.
  • Maker profiles: https://betalist.com/@everygenai, read as the startups that maker built.
  • The latest feed: https://betalist.com/startups, from page 1 or from any page you paste (?page=40).

Resume from earlier runs

A run that stops at its maxItems or its timeout ends its log with a line such as To pick up where this run stopped, add WkzbQMuFYuamGv3YF to "Resume from earlier runs". Pick that dataset in the field, or pass its ID through the API, keep the rest of the input as it was, and start again: the startups the earlier run delivered are skipped before they are read, so you never pay twice for the same startup, and the new run delivers the next ones. If you resume a run that was itself resumed, the log names every dataset of the chain: add them all. A run the platform restarts on its own also carries on from the rows it already saved, without delivering them twice.

Dates

featuredAfter and featuredBefore take a day (2026-10-01), a full timestamp, or a span back from today (7 days, 2 weeks, 3 months, 1 year, today, yesterday). BetaList features startups by the day, so both ends are whole days, included. On the latest feed and on topics, newest first, the run stops at the first startups featured before the window; with featuredBefore on the latest feed it goes straight to the right day instead of reading every newer page. On keyword searches, which come by relevance, dates filter what the search returns.

What data can you extract from BetaList?

Every row is one startup, with 30 fields grouped the way you would read a profile:

  • Identity: id (BetaList's own startup id, stable across runs and the best key to de-duplicate), slug, url (the permanent BetaList page), name, tagline.
  • Content: description (the full text of the BetaList page, paragraphs kept), topics (BetaList topics, usually 5), categories (the categories those topics belong to), makers (each maker credited, with name, username, profileUrl and avatarUrl), isBoosted (startups shown with BetaList's BOOSTED badge during the run).
  • Website: website (the startup's own address, with BetaList's referral tags removed), websiteDomain, isWebsiteLive (whether the site answered during the run, so you can drop startups that are gone).
  • Contacts: email (the first email, the startup's own domain first), emails (all of them, up to 10), phone, and the profiles twitterUrl, linkedinUrl, facebookUrl, instagramUrl, youtubeUrl, tiktokUrl, githubUrl. They come from the startup's homepage, and from its contact page when the homepage shows no email. Share buttons, tracking links and form placeholders such as you@company.com are left out.
  • Place and time: location (city and country, on startups BetaList filed by region), featuredAt (the day BetaList featured the startup, RFC 3339 UTC).
  • Media: logoUrl, imageUrl (the main picture), screenshots (every image of the BetaList page).
  • Meta: foundBy (which keyword, topic, category, link or feed found the row), scrapedAt.

Absent values are null, lists are [], never an empty string, so filters and joins behave. The dataset has three views: Startups (name, tagline, website, email, LinkedIn, topics, featured day, BetaList page), Contacts (every contact column side by side) and Details (description, categories, makers, logo, screenshots).

Output example

A real row from our SaaS test run, screenshots shortened.

{
"id": 191933,
"slug": "kelbado-lms",
"url": "https://betalist.com/startups/kelbado-lms",
"name": "Kelbado LMS",
"tagline": "Build and manage courses via chat with AI and export to SCORM",
"description": "Kelbado is an AI-powered learning management platform that lets you create, assign, and track courses directly in chat. Describe your topic and audience, and it assembles lessons, tests, and voiceovers in over 30 languages. You can manage enrollments, request reports, and monitor progress from a single conversation. Export SCORM 1.2 or 2004 files, publish on the platform, apply your branding, and integrate with existing LMS and xAPI for analytics. Teams can launch training faster and keep everything in one place.",
"topics": ["SaaS", "Web Tools", "Online Learning", "Corporate Training", "Artificial Intelligence"],
"categories": ["Productivity", "Education", "AI"],
"makers": [
{
"name": "kelbado",
"username": "kelbado",
"profileUrl": "https://betalist.com/@kelbado",
"avatarUrl": null
}
],
"isBoosted": false,
"website": "https://kelbado.eu/",
"websiteDomain": "kelbado.eu",
"isWebsiteLive": true,
"email": "support@kelbado.eu",
"emails": ["support@kelbado.eu"],
"phone": null,
"twitterUrl": "https://x.com/kelbado_lms",
"linkedinUrl": "https://www.linkedin.com/company/kelbado-lms",
"facebookUrl": null,
"instagramUrl": null,
"youtubeUrl": "https://www.youtube.com/@kelbado-lms",
"tiktokUrl": null,
"githubUrl": null,
"location": null,
"featuredAt": "2026-11-06T00:00:00Z",
"logoUrl": "https://cdn.betalist.com/ogesbjl2tzbmhbwoeu864xe1m5um",
"imageUrl": "https://resize.imagekit.co/pJxZraLsv5pE8XQdxfOJUcVDB__qwkcAtYWrNKMOgyo/plain/s3://betalist-production/x7olpsz8rvmmcdy1vjebvs4fnvd9",
"screenshots": [
"https://resize.imagekit.co/sBaenhO2z05HIHHXcpXDcmpQTE95-CjWFUeaiUTvSLA/h:300/dpr:2/bg:ffffff/plain/s3://betalist-production/x7olpsz8rvmmcdy1vjebvs4fnvd9"
],
"foundBy": "topic:saas",
"scrapedAt": "2026-11-10T03:59:48Z"
}

Advanced usage

Get every new launch in your inbox each Monday

Schedule this input weekly in Apify (Schedules, every Monday morning). Each run delivers the startups featured over the past 7 days with their contacts, ready for a Google Sheets or CRM integration.

{
"featuredAfter": "7 days",
"maxItems": 500,
"includeContacts": true
}

Study a past month of launches

Set both dates for a window in the past: the run goes to that day of the latest feed and stops at the end of the window. Useful to compare what launched in a quarter, or to backtest a scouting thesis.

{
"featuredAfter": "2024-03-01",
"featuredBefore": "2024-03-31",
"maxItems": 500,
"includeContacts": false
}

Crawl the whole catalog in several runs

BetaList holds about 28,000 startups. Read them in slices of a few thousand: the first run starts from the newest launch, and each next run resumes from the datasets of the runs before it, so a slice never repeats a startup you already have. In our local test, a SaaS run of 6 startups resumed from the 6 of the run before it delivered the next 6 of the topic, with no startup twice.

{
"maxItems": 5000,
"includeContacts": false,
"resumeCursor": ["WkzbQMuFYuamGv3YF"]
}

Paste startup pages from a spreadsheet: each one comes back with its website, contacts, makers, topics and featured day.

{
"startUrls": [
{ "url": "https://betalist.com/startups/parroli" },
{ "url": "https://betalist.com/startups/everygen-ai" },
{ "url": "https://betalist.com/startups/recoupmrr" }
]
}

Watch a whole category for a sector report

A category merges all of its topics, newest first. Here, every AI startup featured in the last 30 days, without the contacts to keep the run short.

{
"topics": ["AI"],
"featuredAfter": "30 days",
"maxItems": 300,
"includeContacts": false
}

Follow a country or a maker

Region pages and maker profiles work like any other source. Startups found by both are delivered once, and foundBy tells you where each row came from.

{
"startUrls": [
{ "url": "https://betalist.com/regions/france" },
{ "url": "https://betalist.com/@everygenai" }
],
"maxItems": 100
}

FAQ

What is BetaList? BetaList (betalist.com) is a directory of early-stage startups, where founders submit their product before or right after launch to get their first users. It features a handful of new startups every day: 30 over the 3 days before our test, and about 28,000 since 2010. Think of it as an earlier, smaller Product Hunt, focused on pre-launch and beta products.

What does this actor extract from BetaList? Startups. Each row has the name, tagline, full description, topics and categories, makers, featured day, logo and screenshots from BetaList, the startup's real website, and by default the emails, phone and social profiles that website publishes.

Where do the emails come from, and are they real? From the startup's own website: its homepage, and its contact page when the homepage shows none. They are the addresses the startup publishes for the public (hello@, support@, contact@ and founders' addresses when they list them). Form examples such as you@company.com or name@example.com are dropped. In our SaaS test, 14 of 20 startups had at least one email; on keyword searches that reach older startups, fewer sites are still online and fewer emails come back (6 of 25 for "crm").

Do I need a BetaList account? No. The actor reads what BetaList shows to any visitor, without signing in, and the startups' websites as any visitor would.

How fresh is the data? Live. Every run reads BetaList and the websites at that moment, nothing is cached. featuredAt is the day BetaList featured the startup, and isWebsiteLive says whether the website answered during your run.

How many startups can I get? There is no fixed limit: set maxItems to what you need. A topic or the latest feed goes as deep as BetaList's history. A keyword search gives its 60 best matches by relevance. In our tests, 20 startups with their contacts took 11 to 13 seconds and 30 took 16 seconds.

My run stopped at its limit or its timeout. Do I pay again to get the rest? No. Start a new run with the same input and add the dataset of the stopped run to resumeCursor ("Resume from earlier runs"): its ID is on the last lines of that run's log. The startups it delivered are skipped before they are read and are not charged again, and the new run carries on with the next ones.

Can I run several keywords, topics and links at once? Yes. All sources run in one go: startup links first, then keywords, topics and the other links, in the order you give them. A startup found by two sources is delivered once, and maxItems is the total for the run.

Why do some rows have no email or no social profiles? Because the startup's website does not publish one, or because the site is gone (isWebsiteLive: false), which is common for startups featured years ago. The row still ships with everything BetaList shows. Turn includeContacts off if you only need the BetaList data.

Why are some maker names empty? Some makers never filled in a display name on BetaList: their row in makers keeps the username and the profile link, with name: null. In our SaaS test, 17 of 20 startups had a named maker.

What does isBoosted mean? Startups can pay BetaList to be boosted: they appear with a BOOSTED badge in extra places across the site. isBoosted is true when the run saw that badge on the startup. On the latest feed with no dates, boosted startups appear in the order BetaList shows them, as on its front page; on topics and searches they appear only where they really belong.

Are the links permanent? url (the BetaList page) and website are permanent addresses. logoUrl, imageUrl and screenshots are BetaList image links that work as long as the startup keeps its page; download them if you archive the data.

More SilentFlow scrapers

๐Ÿ›’ E-commerce

๐Ÿ’ผ Jobs

๐Ÿ  Real estate

๐Ÿ“ฃ Social media

๐Ÿข Business data

โœˆ๏ธ Travel

๐ŸŽฏ Lead generation

๐Ÿ”Ž SEO

๐ŸŽฌ Video

๐Ÿ“ฐ News

๐Ÿงฐ More tools

Support

Need something this actor does not do yet? We ship features fast.

  • Feature requests go straight to our backlog
  • Enterprise needs? We do custom integrations and high-volume plans
  • Pricing questions? Check the Monetization tab on the actor page

Response time: usually under 24 hours.

This actor extracts publicly available data from BetaList and from the public websites of the startups it lists. It does not bypass any login, paywall or CAPTCHA, and it only reads contact details that a startup publishes on its own site. Users are responsible for complying with BetaList's terms of service and with applicable data protection and anti-spam laws (GDPR, CCPA, and PIPL where relevant). Rows can contain personal data, such as makers' names and profiles or a founder's email address: store and process them accordingly, have a lawful basis before contacting anyone, and honor opt-out requests. The data returned is informational; verify it before using it for regulated decisions.

BetaList Scraper by SilentFlow: every new startup on BetaList, with a way to reach it.