August 13, 2026 · 7 min read
Instagram Keyword Search Scraper: Setup and Extraction Guide
The Instagram Keyword Search Scraper automates the extraction of post data from Instagram keyword search results. The tool handles both single-word and multi-word queries, discovering target post URLs and enriching every result with full post details, engagement metrics, author metadata, and sponsorship flags. Authentication for search discovery uses a managed pool of shared sessions by default, while post enrichment runs independently without requiring cookies.
Practical use cases
Use case 1: Brand mention and sponsorship tracking
Outcome: A structured dataset capturing posts associated with target brand queries, including sponsor tags and ad markers.
Question to answer: Which creator accounts publish content mentioning specific brand names, and what proportion of those posts are flagged as paid partnerships or ads?
Configure: Set keywords to your target brand terms, set maxPosts to 200, and leave cookies blank to utilize the default managed session pool.
Working method: Execute discovery across the specified brand keywords. Inspect returned post records for the boolean fields is_paid_partnership and is_ad, alongside the sponsor_tags array. Group the output by creator account to track active promotional campaigns and creator relationships.
Deliverable: A comprehensive log containing brand keyword references, author handles, engagement totals, creation timestamps, and sponsorship metadata.
Stop condition: The actor finishes checking all brand keywords or reaches the 200-post limit for each keyword query.
Use case 2: Content format and engagement analysis
Outcome: Performance metrics categorized by media format and hashtag usage across specific topic keywords.
Question to answer: Which media formats (Photo, Video, Reel, Carousel, or IGTV) yield higher comment and like counts for specific topic search terms?
Configure: Enter target topic strings in keywords, set maxPosts to 500, and specify sessionName as trend_analysis_session.
Working method: Run discovery across topic search terms. Process returned post records to evaluate media_type values against engagement metrics like comment_count and like_count. Aggregate caption hashtags to map common co-occurring terms within high-engagement posts.
Deliverable: An analytical summary of media format distributions, co-occurring hashtag arrays, and engagement averages per topic query.
Stop condition: Discovery exhausts all available public search results for the target keywords or reaches 500 posts per keyword.
Use case 3: Niche author discovery and profile auditing
Outcome: A profile directory of top-ranking accounts for specific niche search terms, including verified status and follower metrics.
Question to answer: Which creator accounts rank highest in search results for industry search terms, and what are their follower totals and publication counts?
Configure: Populate keywords with industry terms, set maxPosts to 100, and optionally provide account session cookies in the cookies parameter.
Working method: Collect all returned records and extract the nested author_meta object. Extract author fields including id, username, full_name, is_verified, followers, post_count, and profile_url. Remove duplicate creator profiles across search terms to construct a clean account index.
Deliverable: A deduplicated directory of creator profiles indexed by relevant search terms, detailing verified badges, follower numbers, and profile links.
Stop condition: Processing completes across all listed search terms or hits 100 collected posts per keyword.
Step-by-step extraction workflow
- Define search parameters: Set target single-word or multi-word search queries in the keywords array. Set maxPosts to define the maximum number of post URLs collected per query, up to a maximum limit of 10,000.
- Configure session settings: Choose whether to rely on the default managed pool of shared sessions or paste custom session cookies in JSON format into the cookies parameter. Provide a sessionName if you need to isolate saved cookie states across distinct account profiles.
- Execute search discovery: Launch the extraction job. The scraper queries Instagram search endpoints to discover post URLs up to the maxPosts threshold specified for each keyword.
- Run post enrichment: The scraper automatically enriches each discovered post URL using a multi-tier fallback mechanism. This second step collects post captions, media items, author details, and engagement counts without needing session cookies.
- Process and review status flags: Check the status field on returned records. Verify successful enrichments marked as success, and filter out edge cases such as age_restricted, not_found, or blocked entries.
Specialized tools in the Instagram scraping ecosystem
Depending on your data requirements, several specialized tools handle distinct tasks within the Instagram extraction ecosystem:
- Instagram Keyword Search Scraper: Extracts posts from Instagram keyword search results and enriches each result with complete author, media, and engagement details.
- Instagram Keyword Scraper: Searches and scrapes posts by keyword.
- Instagram Post Scraper: Scrapes public posts, reels, IGTV, and carousel posts from direct URLs without requiring login or cookies.
- Instagram Comment Scraper: Scrapes comments from any Instagram post or reel.
- Instagram Profile Scraper: Extracts profile data, bio, follower counts, and profile picture URLs.
- Instagram Followers & Following Scraper: Scrapes followers and following lists from any profile.
- Instagram Tagged Posts Scraper: Collects posts where a user has been tagged.
- Instagram Hashtag Scraper: Scrapes posts and profiles by hashtag.
- Instagram Story Downloader: Downloads stories from Instagram profiles.
- Instagram Downloader API: Downloads photos, videos, and reels from Instagram.
- Instagram Transcript Scraper: Extracts transcripts from Instagram video content.
Data quality, operational limits, and edge cases
Understanding operational boundaries ensures predictable output and clear expectations:
- Public account scope: Search results include content exclusively from public Instagram profiles. Posts from private accounts do not appear in Instagram search results and cannot be scraped.
- Post collection limits: The maxPosts input accepts values from 1 to 10,000 posts per keyword. If Instagram returns fewer unique posts than requested, the actor stops early once results are exhausted.
- Missing or conditional fields: Output fields depend on post and author settings. When an author hides likes, likes_hidden is true and like_count is omitted. When comments are disabled, comments_disabled is set to true. Optional fields such as location, music, is_paid_partnership, and is_ad appear only when present on the source post.
- Status field values: Every record includes a status value indicating the result. Fully enriched posts display success. Other potential values include not_found for deleted or private posts, age_restricted for posts behind account-level age gates, error or blocked if enrichment retries fail, and invalid_url for malformed URLs.
- Retries and fallbacks: Built-in retry logic and automatic managed session rotation keep search discovery running smoothly. Post enrichment uses a multi-tier fallback mechanism so results stay complete even when one data source is incomplete.
Frequently asked questions
Do I need to supply my own Instagram cookies?
No. The actor uses a managed pool of shared Instagram sessions by default for the search step. You can optionally paste your own JSON cookies into the cookies parameter if you want to search using a specific account session.
Are posts from private profiles accessible?
No. Only posts from public accounts appear in Instagram search results and can be extracted by the scraper.
What happens when an author hides their like count?
If the post author hides likes, the likes_hidden field is set to true, and the like_count field is omitted from the post record.
How does the scraper mark age-gated posts?
Posts behind an account-level age restriction are reported with a status of age_restricted in the status field instead of failing silently.
Are session cookies required for post enrichment?
No. Session cookies are only required for the keyword search step. The post enrichment phase operates independently without session cookies.
Resources
- Instagram Keyword Search Scraper actor documentation
● Featured actors
Instagram Keyword Search Scraper
Extract posts from Instagram keyword search results. Scrape post URLs, captions, usernames, media URLs, hashtags, engagement metrics, and more. Supports multiple keywords with anti-detection features.
Run on Apify ↗