Facebook Events Scraper - Dates, Venues & Ticket Links
Pricing
$6.00 / 1,000 event scrapeds
Facebook Events Scraper - Dates, Venues & Ticket Links
Collect public Facebook events from pages, event URLs and limited text searches. Export dates, venues, coordinates, organizers, ticket links and public attendance counts.
Pricing
$6.00 / 1,000 event scrapeds
Rating
0.0
(0)
Developer
SR
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Facebook Events Scraper
Facebook Events Scraper collects public events from Facebook pages and individual event URLs. Export dates, venues, coordinates, organizers, ticket links and public attendance information as one row per event.
Use the results to maintain a venue calendar, follow a promoter's announcements, compare local event listings or prepare an event directory. A stable Facebook event ID helps you match repeat exports and update an existing record when its date or venue changes. Only public information available without a Facebook account is collected.
Facebook Events Scraper input
Provide start_urls with public Facebook page handles, page URLs or individual event URLs. The MOJO page used in the included examples is https://www.facebook.com/mojoconcerts. A direct event example is https://www.facebook.com/events/1377830703495746/, the public Treasure concert at AFAS Live in Amsterdam. Long event URLs containing a venue and event name are also accepted and resolve to the same event ID.
{"start_urls": ["https://www.facebook.com/mojoconcerts"],"event_type": "upcoming","max_events": 25,"include_details": true}
Choose event_type as upcoming, past or both for page inputs. A URL ending in upcoming_hosted_events or past_hosted_events explicitly selects that tab and takes precedence over the general setting. The limit max_events defaults to 50 and accepts values from 1 to 1,000 per input. With both, that limit is shared across the two tabs. Events repeated between inputs are delivered once.
Set include_details to false for a lighter list export. List records contain the event ID, title, URL and the date, venue and organizer fields that Facebook provides in that list. They do not include the complete address, coordinates, description or ticket link. Search lists can omit dates entirely. Individual event URLs always return the event details, regardless of this setting.
Text searches and city overviews
Use search_queries for a text query such as techno. This is a limited discovery option: Facebook exposes about 20 events per query without login, and the results cannot be restricted reliably to a requested city. Adding a city to the query does not guarantee results from that city. Each search response includes a warning explaining this limit. This actor does not promise complete geographic search coverage.
A public city overview URL is another supported input. The captured Amsterdam example is https://www.facebook.com/events/explore/amsterdam-netherlands/111777152182368/. These overviews typically expose about 12 events and have no further pages. For a complete calendar of a known organizer, use its page's hosted events instead. You can combine up to 20 page, event, city overview and text search inputs in one run.
Output and event fields
The default dataset contains one row per unique public event. The shared event fields include event_id, title, url, start, start_date, end, venue_name, address, city, country_code, lat, lng, organizer_name and category. Each record also identifies its source, platform and collection time through source, platform and fetched_at.
Detailed records add ticket_url, description, organizer IDs and URLs, all public hosts, the cover image, cancellation and past-event flags, and available attendance fields. source_input identifies the input that produced the record, while source_page identifies a page handle when applicable. detail_level distinguishes a list record from an enriched event record.
A recurring event's parent URL returns one record under that parent ID. Dates and details describe the occurrence currently shown by Facebook; child_events_count describes the series. An individual occurrence URL keeps its own event ID and its parent_event_id. If a listed event's details remain unavailable after a retry, the list record is retained with detail_level: "list" and a warning.
Missing information is returned as null. Facebook does not provide ticket prices or ticket availability through these public event pages, so price and sale-status fields remain null. A ticket link alone does not establish that tickets are available. Local start and end values use the UTC offset Facebook provides. start_utc preserves the absolute time when available. An IANA timezone is not inferred; timezone remains null. List-only records have no reliable local offset and therefore leave the local time fields null.
Attendance needs careful interpretation. responded_count is the exact public response total when Facebook provides it. interested_display and going_display preserve the displayed text. If Facebook shows 1.1K interested people, interested_count remains null because the text is rounded. An unrounded value such as 124 can populate going_count. Counts are not calculated by subtracting one public counter from another.
The run's OUTPUT record includes events, warnings, input-specific errors, status information and continuation metadata. Source collection totals describe what Facebook reports; they can differ from the number of events actually accessible. They are not a promise of a particular result count.
Pricing and free results
The configured price is $6 per 1,000 delivered events, subject to the current pricing shown on the actor's Pricing tab. The same event is charged once when delivered, including when it is encountered through multiple inputs. Empty results and events that could not be delivered are not charged. There is no separate event-detail charge or start fee in this product's charge configuration.
Non-paying users receive up to 10 event records per run. Larger collections are continued automatically for paying users until the requested limits, available public results or run budget are reached. A partial run includes warnings so you can distinguish a complete source result from an interrupted collection.
FAQ
Do I need a Facebook account or cookies?
No. This actor collects only publicly accessible event information. It does not accept login credentials, access private events or expose guest lists. A private, removed or unknown event can return a not-found result.
Why does a venue page have no upcoming events?
Facebook's hosted event tab contains events created or hosted by that page. Concerts taking place at a venue may be hosted by promoters instead. Try the promoter's page or supply known event URLs. An existing page with no matching hosted events does not produce fabricated event rows.
Can I collect every event in a city?
No. Text searches and city overviews have the limits described above. For dependable coverage, maintain a list of relevant organizer pages and collect their upcoming hosted events. Public availability can also change between runs.
Can I resume a large API request?
Yes. API responses include next_cursor when another request is needed. Repeat the original input with that cursor and combine the returned event rows. The Apify actor follows continuation automatically, so ordinary actor users do not need to manage cursors themselves.