Meetup Events Scraper
Pricing
from $3.00 / 1,000 results
Meetup Events Scraper
Scrape upcoming Meetup.com events in bulk by keyword and city. Get event title, date/time, venue address, hosting group and member count, RSVP count, ticket price and event URL as clean JSON. No login or API key needed.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Nicolas van Arkens
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Scrape upcoming Meetup.com events in bulk — by keyword and city. Give the actor a list of search keywords and a list of locations, and it returns every matching upcoming event as a clean, structured row: title, date and time, in-person or online, the full venue address (with latitude/longitude), the hosting group (name, URL and member count), the number of people going, the ticket price for paid events, and the event link. No login, no API key.
It reads Meetup's own public event-search data directly, so results are exact and paginate deep — a handful of keywords across a few cities returns thousands of events in one run.
What you get (output fields)
Each row is one event:
| Field | Description |
|---|---|
eventId | Meetup's numeric event id |
title | Event title |
dateTime / endTime | Start / end, ISO 8601 with the local time-zone offset |
eventType | PHYSICAL (in-person) or ONLINE |
isOnline | Boolean shortcut for online events |
eventUrl / shortUrl | Direct links to the event page |
description | Full event description text |
goingCount | Number of people who RSVP'd "going" |
maxTickets | Attendee cap (0 / null = no cap) |
guestsAllowed | Whether attendees can bring guests |
status | ACTIVE, CANCELLED, etc. |
createdTime | When the event was created |
isFree | true for free events |
priceAmount / priceCurrency | Ticket price for paid events |
paymentAccepts / paymentRequired | How payment is taken, and whether it's required |
venueName, venueAddress, venueCity, venueState, venueCountry, venuePostalCode | Full venue address |
venueLat / venueLon | Venue coordinates |
groupId, groupName, groupUrlname, groupUrl | The hosting Meetup group |
groupCity, groupState, groupCountry, groupTimezone | Group location |
groupMemberCount | How many members the group has |
groupFoundedDate, groupIsPrivate, groupIsNew | Group metadata |
photoUrl | Event cover photo |
searchQuery / searchLocation | Which keyword + resolved location found this event |
scrapedAt | Scrape timestamp (UTC) |
Input
| Field | Description |
|---|---|
queries | Keywords to search (array). Each keyword is searched in each location. |
locations | Places to search (array of plain text, e.g. "New York, NY", "London"). Resolved to Meetup's coordinates automatically. |
radius | Search radius in miles (default 50, max 100). |
eventType | any, physical, or online. |
sort | relevance or date (soonest first). |
startDate / endDate | Optional YYYY-MM-DD bounds (defaults from today). |
maxResultsPerSearch | Cap per keyword × location (default 500). |
maxResults | Optional overall cap across all searches. |
proxyConfiguration | Proxy (defaults to Apify Residential, US). |
Every keyword is searched in every location (keyword × location), and each search
is paginated deep automatically (~50 events per page). So ["technology", "startup"]
× ["New York, NY", "San Francisco, CA"] = 4 deep searches in one run. Events are
de-duplicated by event id, so you're never charged twice for the same event.
Example input
{"queries": ["technology", "startup", "artificial intelligence"],"locations": ["New York, NY", "San Francisco, CA"],"radius": 50,"eventType": "any","sort": "relevance","maxResultsPerSearch": 500}
Example output (one row)
{"eventId": "315073761","title": "Stripe developer meetup New York, July 2026 (In Person)","dateTime": "2026-07-21T18:00:00-04:00","endTime": "2026-07-21T20:00:00-04:00","eventType": "PHYSICAL","isOnline": false,"eventUrl": "https://www.meetup.com/stripe-new-york/events/315073761/","goingCount": 208,"maxTickets": 214,"isFree": true,"venueName": "Stripe Office NY","venueAddress": "28 Liberty St. Fl. 48 New York, NY 10005","venueCity": "New York","venueState": "NY","venueLat": 40.707752,"venueLon": -74.008705,"groupName": "Stripe New York","groupUrl": "https://www.meetup.com/stripe-new-york","groupMemberCount": 777,"photoUrl": "https://secure.meetupstatic.com/photos/event/a/7/e/9/highres_534582985.jpeg","searchQuery": "technology","searchLocation": "New York, NY, USA","scrapedAt": "2026-07-19T12:00:00+00:00"}
Use cases
- Event marketing & sponsorship leads — find every relevant meetup in a city, with the group, organizer URL, member count and attendance so you can target the ones worth sponsoring or speaking at.
- Community & competitive research — track which groups are active, how big they are, and how many people show up for a topic across multiple cities.
- Local listings & newsletters — pull a fresh, structured feed of upcoming events (with venue addresses and links) for a "what's on" site or newsletter.
- Sales prospecting — surface companies and communities gathering around a topic (AI, crypto, real estate, fitness…) in your target metros.
FAQ
Do I need a Meetup account or API key? No. The actor reads Meetup's public event search, the same data the website shows.
How many events per run? As many as Meetup lists. Each keyword+city search
paginates deep (hundreds of events), and you can run many keyword×city combinations,
so runs of thousands of events are normal. Use maxResultsPerSearch / maxResults
to cap it.
Can I get only in-person or only online events? Yes — set eventType to
physical or online.
Why do I have to give a location? Meetup's event search is geographic — even online
events are attached to a region — so every search is centered on a place. Use radius
to widen the area (up to 100 miles).
How is it billed? Pay per event: you're charged once for each event returned. Duplicate events (the same event matching two keywords) are removed before billing.
Past events? Never returned — the actor only lists upcoming events (from startDate,
which defaults to today).