Facebook Search Posts
Pricing
from $2.59 / 1,000 results
Facebook Search Posts
Search Facebook posts, pages, groups, people, videos and events by keyword. Returns detailed data including reactions breakdown, media URLs, and engagement metrics.
Pricing
from $2.59 / 1,000 results
Rating
3.5
(9)
Developer
ScrapeForge
Maintained by CommunityActor stats
19
Bookmarked
1.6K
Total users
419
Monthly active users
66 days
Issues response
a day ago
Last modified
Categories
Share
Search Facebook by keyword and extract posts, pages, groups, people, videos, and events. Get structured data with full engagement metrics, author details, and media URLs.
What does Facebook Search Posts do?
This actor lets you search Facebook just like you would on facebook.com, but returns structured, machine-readable data. Enter a keyword and get back matching posts with all their metadata — perfect for market research, brand monitoring, competitive analysis, and content discovery.
Features
- 6 search types: Posts, Pages, Groups, People, Videos, and Events
- Date filtering: Narrow results to a specific date range
- Location filtering: Scope searches to a geographic area using Facebook location UIDs
- Automatic deduplication: No duplicate results in your dataset
- Automatic pagination: Fetches as many results as you need (up to 1,000)
- Engagement metrics: Reactions breakdown (like, love, haha, wow, sad, angry, care), comments count, and shares count
- Rich media: Image URLs with dimensions, video files (SD/HD), video thumbnails
- Author info: Name, profile URL, and profile picture for each post author
Input parameters
| Parameter | Type | Description |
|---|---|---|
query | String | Required. The keyword or phrase to search for |
search_type | Enum | Type of content: posts, pages, groups, people, videos, events. Default: posts |
max_results | Integer | Maximum unique results to return (1–1,000). Default: 100 |
start_date | Date | Filter results from this date (YYYY-MM-DD) |
end_date | Date | Filter results until this date (YYYY-MM-DD) |
recent_posts | Boolean | Sort by most recent instead of relevance. Default: false |
location_uid | String | Optional. Facebook location UID to filter by geographic area — see Using the search filters |
Using the search filters
Pick the search type before anything else
search_type defaults to posts. On posts, the actor searches the text of posts, so a search for Maria Gonzalez returns posts that mention that name — not her profile. To find profiles, pages, groups, videos, or events, switch search_type to the matching type first. This is the most common reason a search comes back empty.
Put only the search term in query
Facebook matches query against the content itself, so it does not understand compound queries. Searching people for Maria Gonzalez Santiago finds nothing, because no profile is named that. Search the name alone and use the filters below to narrow it down.
Location UID (advanced, optional)
location_uid is optional and most searches don't need it — leave it empty for a global search. When set, it expects Facebook's internal numeric ID for a place, not a city or country name. Passing Santiago or Chile will not work.
To find the UID for a place:
- Run the equivalent search on
facebook.comand apply the city filter in the left sidebar. - Open any result's profile and go to its About tab.
- Click the city listed there. That opens Facebook's page for that location.
- The number at the end of that page's URL is the location UID.
Paste that number into location_uid.
Output
Each result in the dataset contains:
{"post_id": "pfbid02ABC123","type": "photo","url": "https://www.facebook.com/user/posts/pfbid02ABC123","message": "Check out this amazing product!","timestamp": 1710864000,"comments_count": 42,"reactions_count": 156,"reshare_count": 12,"reactions": {"like": 100,"love": 30,"haha": 10,"wow": 8,"sad": 3,"angry": 2,"care": 3},"author": {"id": "123456789","name": "John Doe","url": "https://www.facebook.com/johndoe","profile_picture_url": "https://..."},"image": {"uri": "https://...","height": 720,"width": 1280,"id": "img123"},"video": null,"external_url": null}
Use cases
- Brand monitoring: Track mentions of your brand, products, or competitors
- Market research: Discover trends and public sentiment around topics
- Content discovery: Find popular posts in your niche for inspiration
- Lead generation: Identify potential customers discussing relevant topics
- Event tracking: Monitor discussions around events, launches, or campaigns
- Competitive analysis: Analyze competitor engagement and content strategy
Pricing
This actor is priced per result. You only pay for the results you get — no hidden fees for failed runs or empty searches.
Usage limits for free tier users
To keep the service sustainable, accounts on the Apify Free plan have the following limits when running this actor:
- Up to 20 results per run — any higher value in
max_resultsis automatically reduced. - 1 run per 24 hours — a second run launched within 24 hours of the previous one finishes immediately with a status message explaining when to retry.
When a limit is reached, the run finishes gracefully (no error) and the status message explains what happened.
Paid plans (Starter / Bronze and above) are not subject to these per-actor limits. To remove the restrictions, upgrade your Apify plan at https://console.apify.com/billing.
Limitations
- Results depend on Facebook's public search availability
- Some posts may not be accessible if the author has restricted visibility
- Video file URLs (SD/HD) may expire after some time
Disclaimer
This is an unofficial actor and is not affiliated with, endorsed by, or sponsored by Facebook or Meta. It is developed and maintained independently. Facebook is a trademark of Meta Platforms, Inc.
This actor accesses only publicly available data. Users are responsible for ensuring their use complies with Facebook's Terms of Service and all applicable laws. By using this actor, you agree that you are solely responsible for how you use the extracted data.