Instagram Location Scraper avatar

Instagram Location Scraper

Pricing

$19.99/month + usage

Go to Apify Store
Instagram Location Scraper

Instagram Location Scraper

📍 Instagram Location Scraper (instagram-location-scraper) scrapes rich location data from Instagram place pages: place name, address, coordinates, top/recent geotagged posts, captions, hashtags, media URLs, likes & comments. 🚀 Perfect for local SEO, social listening & competitor analysis.

Pricing

$19.99/month + usage

Rating

0.0

(0)

Developer

ScrapePilot

ScrapePilot

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Share

Instagram Location Scraper

Instagram Location Scraper is a focused Instagram places scraper that collects structured posts from Instagram place pages and geotagged feeds. It helps you scrape Instagram posts by location, extract media URLs, engagement counts, owners, and coordinates — acting as an Instagram location ID scraper and Instagram location API alternative for marketers, developers, analysts, and researchers. With automatic keyword/username conversion to place pages, smart proxy fallback, and time-based filters, it enables reliable, location-based content collection at scale. 🚀

What data / output can you get?

Below are the main fields saved for each post. Results are stored in your Apify dataset and can be exported to JSON, CSV, or Excel.

Data typeDescriptionExample value
typeItem type indicator"post"
idUnique Instagram post ID"3761820491792436654"
codeShort code used in post URLs"DQ0q85qEs2u"
urlFull URL to the post"https://www.instagram.com/p/DQ0q85qEs2u/"
createdAtISO timestamp when the post was created"2025-11-09T10:52:49Z"
likeCountNumber of likes1
commentCountNumber of comments0
captionPost caption text"#berlin #travel"
isCarouselWhether the post is a carouseltrue
isVideoWhether the post contains videofalse
ownerObject with post owner info{"id":"222741818","username":"sihyun_sung_photography",...}
locationObject with place metadata{"id":"1681866845218607","name":"Messe Berlin",...}
imageImage details if present{"url":"https://scontent.cdninstagram.com/...", "width":1440, "height":1440}
videoVideo details if present{"id":"video_3761820491792436654","url":"https://...mp4",...}
audioAudio/music info if available{"id":"audio_...","title":"...", "audioUrl":"https://..."}

Notes:

  • Media objects (image/video/audio) may be null when not applicable.
  • Owner or location can be null if not provided by the source post.
  • Datasets export easily to JSON, CSV, or Excel for downstream analysis.

Key features

  • 🧭 Smart input detection & conversion
    Paste Instagram location URLs, usernames (with or without @), or keywords. The actor detects the type and turns them into Instagram place pages automatically — a practical Instagram location search scraper workflow.

  • 🌐 Keyword-based location discovery
    Use the built‑in Instagram geo search scraper logic to find place IDs and URLs from keywords. Great for discovery workflows like “Berlin”, “New York”, or specific venues.

  • 🧩 Location URL extraction from usernames
    As an Instagram location extractor, it scans a user’s public posts to find geotagged places and builds location URLs from them.

  • ⏳ Timeframe filtering (absolute or relative)
    Filter posts by date using absolute dates (YYYY‑MM‑DD) or relative windows (e.g., last 7 days/weeks/months/years) for precise, time‑bound analyses.

  • 🛡️ Intelligent proxy fallback
    Built‑in proxy strategy moves from direct → datacenter → residential when blocked, keeping your Instagram location-based content scraper runs stable.

  • 📦 Structured JSON output
    Clean JSON per post with identifiers, owner, location (including coordinates), engagement counts, and media objects — ready for analytics or BI pipelines.

  • 🧪 Production‑ready reliability
    Robust error handling, pagination, retry logic, and detailed logs ensure dependable runs at scale.

How to use Instagram Location Scraper - step by step

  1. Create or log in to your Apify account
    Visit console.apify.com and sign in.

  2. Open the actor
    Find “Instagram Location Scraper” in your Actors list or search the Apify Store.

  3. Add inputs

    • In the INPUT tab, paste your list into startUrls.
    • You can mix Instagram location URLs, usernames (e.g., "mrbeast"), and keywords (e.g., "berlin").
  4. Configure limits and timeframe

    • Set maxItems to cap the number of posts (0 = unlimited).
    • Choose dateFilterType (“relative” or “absolute”) and fill out either relativeValue + relativeUnit or absoluteStartDate/absoluteEndDate.
  5. Optional: Add a session ID
    Enter sessionId to authenticate for more reliable keyword searches and place feeds.

  6. Configure proxy behavior
    In proxyConfiguration, toggle useApifyProxy. If Instagram blocks requests, the actor will automatically try datacenter and then residential proxies.

  7. Run the actor
    Click Start. Watch the LOG tab for progress, proxy fallback events, and timeframe filtering summaries.

  8. Export results
    Go to the OUTPUT tab and export your dataset as JSON, CSV, or Excel for downstream use.

Pro tip: Enable sessionId and Apify Proxy for high-volume runs or when using the Instagram place page scraper in stricter regions.

Use cases

Use case nameDescription
Local SEO + venue insightsAnalyze what content performs at target places; benchmark competitors and discover trends using an Instagram place page scraper.
Social listening by placeMonitor geotagged content around brand locations with an Instagram geotag scraper for timely engagement.
Event & venue monitoringTrack posts around conferences, concerts, or sports events to inform marketing and operations.
Tourism & city researchUnderstand traveler behavior and interests by collecting location-tagged posts for destinations.
Competitive analysis by locationCompare engagement at competitor locations and identify winning content formats.
Data enrichment pipelinesFeed a data warehouse with structured location-based posts for BI dashboards (API/automation-friendly).
Academic & urban studiesStudy urban patterns via Instagram location-based content scraper datasets with coordinates and timestamps.

Why choose Instagram Location Scraper?

Get reliable, structured location data from Instagram place pages with automation-first design and built‑in resilience.

  • 🎯 Accurate, structured fields: IDs, owners, captions, engagement counts, coordinates, and media objects.
  • 🧠 Automatic discovery: Converts keywords and usernames into place URLs — a practical Instagram location ID scraper for discovery.
  • ⏱️ Time-bound analysis: Absolute and relative timeframe filters to isolate recent or historical posts.
  • 🔌 Developer-friendly: JSON output fits data engineering pipelines; export to CSV/Excel for non-technical users.
  • 🛡️ Robust & scalable: Automatic proxy fallback and retry logic outperform brittle browser extensions.
  • 💰 Cost-effective automation: Runs on Apify infrastructure with transparent usage and detailed logs.
  • 🔒 Ethical by design: Targets publicly available content; you remain in control of compliance.

In short: a dependable Instagram location extractor vs. unstable one-off tools — built for repeatable, production workflows.

Yes, when used responsibly. This tool is designed to access publicly available Instagram location pages and geotagged posts. It does not access private profiles or password-protected content by itself.

Guidelines for compliant use:

  • Scrape only publicly available data.
  • Respect Instagram’s Terms of Service.
  • Comply with data protection laws (e.g., GDPR, CCPA).
  • Treat cookies/session IDs like credentials and keep them secure.
  • Consult your legal team if you have edge cases or jurisdiction‑specific requirements.

Input parameters & output format

Example JSON input

{
"startUrls": [
"https://www.instagram.com/explore/locations/213131048/berlin-germany/",
"mrbeast",
"berlin"
],
"maxItems": 50,
"sessionId": "your_session_id_here",
"proxyConfiguration": {
"useApifyProxy": false
},
"dateFilterType": "relative",
"relativeValue": 14,
"relativeUnit": "days",
"absoluteStartDate": "",
"absoluteEndDate": "",
"includeEngagement": true,
"includeVideoMetadata": true
}

Parameters

  • startUrls (array of strings, required): List of Instagram location URLs, usernames, or keywords. Examples: 'https://www.instagram.com/explore/locations/213131048/berlin-germany/' (URL), 'mrbeast' (username), 'berlin' (keyword). Default: none.
  • maxItems (integer, optional): Maximum number of posts to extract (0 for unlimited). Default: 20.
  • sessionId (string, optional): Instagram session ID cookie value (required for authentication). Get this from your browser cookies when logged into Instagram. Default: "".
  • proxyConfiguration (object, optional): Choose which proxies to use. If Instagram rejects the proxy, a residential proxy will be used as a fallback. Default prefill: {"useApifyProxy": false}.
  • dateFilterType (string, optional): Select whether to use absolute date or relative time. Enum: ["absolute","relative"]. Default: "relative".
  • absoluteStartDate (string, optional): Start date in YYYY-MM-DD format. Use when dateFilterType = "absolute". Default: "".
  • absoluteEndDate (string, optional): End date in YYYY-MM-DD format. Use when dateFilterType = "absolute". Leave empty for current date. Default: "".
  • relativeValue (integer, optional): Number of time units for relative date filtering. Use when dateFilterType = "relative". Default: 0.
  • relativeUnit (string, optional): Unit of time for relative date. Enum: ["days","weeks","months","years"]. Default: "days".
  • includeEngagement (boolean, optional): Whether to include engagement metrics like likes, shares, comments count. Default: true.
  • includeVideoMetadata (boolean, optional): Whether to include detailed video metadata like duration, quality, etc. Default: true.

Example JSON output

{
"type": "post",
"id": "3761820491792436654",
"code": "DQ0q85qEs2u",
"url": "https://www.instagram.com/p/DQ0q85qEs2u/",
"createdAt": "2025-11-09T10:52:49Z",
"likeCount": 1,
"commentCount": 0,
"caption": "#esmocongress2025 #berlin #dataize",
"isAvailable": true,
"isLikeAndViewCountsDisabled": false,
"isPinned": false,
"isPaidPartnership": false,
"isCarousel": true,
"isVideo": false,
"owner": {
"id": "222741818",
"username": "sihyun_sung_photography",
"fullName": "",
"profilePicUrl": "https://instagram.fdac142-1.fna.fbcdn.net/...",
"isPrivate": false,
"isVerified": false
},
"location": {
"id": "1681866845218607",
"name": "Messe Berlin",
"city": "",
"lat": 52.503101530657,
"lng": 13.272066565882
},
"video": null,
"image": {
"url": "https://scontent.cdninstagram.com/v/t51.82787-15/...",
"width": 1440,
"height": 1440
},
"audio": null
}

Notes:

  • Optional fields may be null depending on the media type and source (e.g., video, image, audio, owner, location).
  • Hashtags are included as part of caption text; this actor does not perform separate hashtag extraction.
  • commentCount is provided; full comment text retrieval is not implemented.

FAQ

Do I need to log in or provide a session ID?

A session ID is optional but recommended. Without it, Instagram may return limited data or redirect searches to login. Providing sessionId often improves reliability for keyword and username discovery in this Instagram location search scraper.

Can I use keywords or usernames instead of location URLs?

Yes. You can input location URLs, usernames, or keywords. The actor converts usernames and keyword queries into Instagram place pages, acting like an Instagram place ID finder and Instagram location tag scraper.

Does this download images and videos?

The actor returns media URLs (image.url and video.url) in the output JSON. You can download media by fetching those URLs in your own workflow.

Can I filter by date or time range?

Yes. Use dateFilterType with either relativeValue + relativeUnit (e.g., last 7 days) or absoluteStartDate/absoluteEndDate for precise windows. Posts outside your timeframe are skipped.

How many posts can I scrape?

Set maxItems to control the total number of posts. Use 0 for unlimited. Actual availability depends on Instagram’s place feeds and access conditions.

Does it include comments or hashtags?

It returns commentCount and caption text. Hashtags appear within the caption string; full comment text extraction is not implemented.

How does proxy fallback work?

If a request is blocked (e.g., 403/429), the actor automatically switches from direct requests to datacenter proxy, then to residential if needed. Once residential works, it stays sticky for subsequent requests, improving stability for your Instagram nearby posts scraper workflows.

Is this an Instagram location API alternative?

Yes. It programmatically collects location-based content and metadata from Instagram place pages without relying on a first‑party API, making it a practical Instagram location data scraper alternative.

Closing thoughts

Built for location-focused social media intelligence, Instagram Location Scraper delivers structured, reliable datasets from Instagram place pages. With smart input detection, timeframe filters, and proxy fallback, it’s ideal for marketers, developers, analysts, and researchers who need location-based content at scale. Integrate the JSON output into your pipelines, automate enrichment, or export to CSV/Excel — and start extracting smarter, geo‑anchored insights today.