Meetup [$0.99] Events · Groups · Members · RSVP · Topics avatar

Meetup [$0.99] Events · Groups · Members · RSVP · Topics

Pricing

from $0.90 / 1,000 results

Go to Apify Store
Meetup [$0.99] Events · Groups · Members · RSVP · Topics

Meetup [$0.99] Events · Groups · Members · RSVP · Topics

Scrape Meetup events with the host group behind each — name, date, online/in-person, venue + geo, fee, RSVP/going count, and the group's member count, location & topics. Optionally enrich each group with a business contact email (billed per email found). One row per event. JSON/CSV.

Pricing

from $0.90 / 1,000 results

Rating

0.0

(0)

Developer

Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Meetup Scraper

Turn Meetup into structured event + community data. Scrape events from any Meetup find, group, or event URL — title, full description, date/time with timezone, online vs in-person, venue + real lat/long, fee, RSVP / going count, and the host group (name, member count, location, topic category, topics). Optionally enrich each host group with a business contact email (opt-in, billed only per email found). One row per event, JSON or CSV out, billed per result.

How it works

How Meetup Scraper works

✨ Why use this scraper?

Building an events feed? Mapping active communities by topic and size? Tracking which groups are growing and what they're hosting? This actor pulls the full event and the group behind it in a single row.

  • 🎯 Three starting points. Paste a Meetup find/search URL (/find/?source=EVENTS&keywords=...), a group URL (/{group}/ or /{group}/events/), or a direct event URL (/{group}/events/{id}) — all classified automatically. Or just set keyword + location and let the actor build the search.
  • 👥 Group + member intelligence. Every event row carries its host group's name, member count, city/country, topic category, and topics — perfect for finding active communities by size and subject.
  • RSVP / attendance signal. going (confirmed RSVPs) and waitlist counts show real traction per event.
  • 📧 Optional email lead-gen. Flip on enrichEmails to discover a business contact email for each host group (from its name) — adds contactEmail + contactWebsite. Experimental; billed only per email actually found, never for misses.
  • 📍 Online vs in-person, with geo. In-person events include venue name, city, country, and real latitude / longitude; online events are flagged isOnline: true.
  • 💸 Fee captured. isFree plus feeAmount / feeCurrency when an event charges.
  • 🔁 Monitoring mode. Run on a schedule and get only NEW events each time — the actor keeps a private per-user record of what it already delivered.
  • 🧰 No anti-bot, no auth. Reliable, fast parallel fetching — the event data is read straight from the page.
  • 📤 Clean exports. One row per event with the group merged inline — no duplicate rows. JSON + CSV.

🎯 Use cases

TeamWhat they build
Event aggregators / city guidesFresh event feeds by topic + location, with group, venue, date, and RSVP counts
Developer relations / community teamsFind active groups by topic and member size to partner with or sponsor
Market & community researchMap a topic's community footprint — group sizes, cadence, attendance
Sponsorship / BDTarget groups above a member threshold in a category or city
Competitive intelligenceTrack a community's events, growth, and topics over time
Data journalists / researchersDatasets on local meetup activity, attendance, and community trends

📥 Supported inputs

Pass any mix of URLs in startUrls — each is classified automatically. Leave startUrls empty to build a find search from the convenience fields.

URL patternBehaviour
https://www.meetup.com/find/?source=EVENTS&keywords=...Find / search — collects the events listed on the page
https://www.meetup.com/{group}/ or /{group}/events/Group — collects that group's events
https://www.meetup.com/{group}/events/{id}Event detail — routed straight to the parser
keyword + locationThe actor builds https://www.meetup.com/find/?source=EVENTS&keywords={keyword}&location={location}

Easiest workflow: run a search on meetup.com in your browser, copy the URL from the address bar, paste it into startUrls.

Not supported: authenticated/member-only data, hosts outside meetup.com.

Note on volume: Meetup's find page uses infinite-scroll (cursor) pagination rather than numbered pages, so each find URL yields the events present on it. For breadth, pass several find/group URLs (different keywords, locations, or groups) in one run.

🔄 How it works

  1. Classify each startUrl as a find, group, or event URL (or build a find URL from keyword + location).
  2. Collect event links (/{group}/events/{id}) from each find/group page.
  3. Fetch each event detail page in parallel via a global sliding window.
  4. Extract the event's structured data straight from the page — venue, group, hosts, and topics all included, with no separate group fetch.
  5. Push one row per event to the dataset.

⚙️ Input parameters

ParameterTypeDefaultDescription
startUrlsarray["https://www.meetup.com/find/?source=EVENTS&keywords=technology"]Meetup find, group, and/or event URLs. Mix freely.
keywordstringKeyword for the built find search. Used only when startUrls is empty.
locationstringMeetup location token (e.g. us--ny--New_York). Used only when startUrls is empty.
monitoringModebooleanfalseOnly return events not delivered to you on a previous run. The first run seeds the baseline.
resetMonitoringStatebooleanfalseOne-shot: clear the saved "events seen" record at run start.
enrichEmailsbooleanfalseExperimental — billed per email found. Discover a business contact email for each host group (from its name). Adds contactEmail, contactWebsite, and a detailed emailEnrichment object. Only charged when an email is returned, never for misses.
maxItemsinteger1000Hard cap on events collected (controls billing).
maxConcurrency / minConcurrencyinteger10 / 1Parallel HTTP request limits.
proxyobjectApify residentialApify proxy configuration. Meetup has no aggressive anti-bot.

📊 Output overview

Each scraped event is one single dataset row of type: "event", with its host group merged inline — no separate group rows, so the dataset row count equals the event count exactly.

📦 Output sample

One row per event:

{
"type": "event",
"eventId": "315135716",
"eventUrl": "https://www.meetup.com/joinmytrip-dublin-travel-club/events/315135716/",
"name": "Novalja Summer Getaway: Peak July Beach & Festival Crew!",
"description": "Ready to escape to the \"Croatian Ibiza\" this summer? …",
"status": "ACTIVE",
"eventType": "PHYSICAL",
"isOnline": false,
"startDate": "2026-06-22T19:00:00+01:00",
"endDate": "2026-06-22T21:00:00+01:00",
"image": "https://secure.meetupstatic.com/photos/event/e/a/2/9/highres_534599945.jpeg",
"going": 1,
"waitlist": 0,
"maxTickets": 0,
"guestsAllowed": false,
"isFree": true,
"feeAmount": null,
"feeCurrency": null,
"venueName": "Novalja",
"venueCity": "Novalja",
"venueCountry": "hr",
"latitude": 44.556763,
"longitude": 14.882576,
"groupName": "The Dublin Travelers Club - JoinMyTrip",
"groupUrlname": "joinmytrip-dublin-travel-club",
"groupUrl": "https://www.meetup.com/joinmytrip-dublin-travel-club",
"groupCity": "Dublin",
"groupCountry": "ie",
"groupMembers": 5803,
"groupTopicCategory": "Travel & Outdoor",
"groupIsPrivate": false,
"hosts": ["Gabo"],
"topics": ["Partying", "Solo Travelers", "Travel", "Vacations"],
"scrapedAt": "2026-06-12T12:15:42.957Z"
}

🗂 Key output fields

GroupFields
Identifierstype, eventId, eventUrl, scrapedAt
Eventname, description, status, eventType, isOnline, image
SchedulestartDate, endDate (ISO with offset)
Attendance / ticketsgoing (confirmed RSVPs), waitlist, maxTickets, guestsAllowed, isFree, feeAmount, feeCurrency
VenuevenueName, venueAddress, venueCity, venueState, venueCountry, latitude, longitude (null for online events)
Host groupgroupName, groupUrlname, groupUrl, groupCity, groupState, groupCountry, groupMembers, groupTopicCategory, groupIsPrivate, groupIsProNetwork
People / topicshosts[] (host names), topics[]
Contact (only when enrichEmails: true)contactEmail, contactWebsite, emailEnrichment (full discovery detail)

❓ FAQ

Which Meetup URLs are supported? Find/search URLs (/find/?source=EVENTS&keywords=...), group URLs (/{group}/, /{group}/events/), and event URLs (/{group}/events/{id}). You can also skip URLs and set keyword + location.

Why don't I get hundreds of events from one find URL? Meetup's find page uses cursor (infinite-scroll) pagination, not numbered pages, so each find URL returns the events present on it. For more, pass multiple find/group URLs (different keywords, locations, or specific groups) in one run.

Why are venue/geo fields null for some events? Those are online events (isOnline: true) — there's no physical venue.

Can I get contact emails for the host groups? Optionally, yes. Meetup itself doesn't expose organizer contact details, but with enrichEmails: true the actor discovers a business contact email for each host group from its name (experimental). It adds contactEmail, contactWebsite, and an emailEnrichment detail object, and is billed only per email actually found — never for misses. Leave it off (the default) for pure event/community data.

How does monitoring mode work? With monitoringMode: true, events whose ID was already delivered to you are skipped (no fetch, no charge). The first run seeds your baseline; later runs return only new events.

Can I scrape private or member-only data? No. The scraper accesses only publicly available event and group pages — no logged-in content, no attendee personal data.

💬 Support

🛠 Additional services

  • Custom output shape, extra fields, or one-off datasets: muhamed.didovic@gmail.com
  • Need a similar scraper for other event sites (Eventbrite, Lu.ma, etc.)? Drop an email.
  • For API access (no Apify fee, just a usage fee for the API): muhamed.didovic@gmail.com

🔎 Explore more scrapers

If this Meetup Scraper was useful, see other scrapers and actors at memo23's Apify profile — covering events, job boards, real estate, social media, and more.


⚠️ Disclaimer

This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Meetup, Meetup.com, or any of their subsidiaries or affiliates. All trademarks mentioned are the property of their respective owners.

The scraper accesses only publicly available event and group pages on meetup.com — no authenticated endpoints, member-only features, or attendee personal data. Users are responsible for ensuring their use complies with Meetup's Terms of Service, applicable data-protection law (GDPR, CCPA, etc.), and any contractual obligations of their own organisation.


SEO Keywords

meetup scraper, scrape meetup, meetup api, meetup.com scraper, apify meetup, meetup events scraper, meetup events data, meetup group scraper, meetup group members, meetup rsvp data, meetup attendance scraper, scrape events by city, event data api, meetup community data, meetup topic scraper, developer community scraper, tech meetup data, meetup group size, local events feed, meetup monitoring, meetup organizer emails, meetup group contact email, meetup lead generation, eventbrite alternative scraper, luma events scraper