Skip to main content

instagram_monitor

GitHub Release PyPI Version GitHub Stars Python Versions Docker Pulls License OpenSSF Scorecard Last Commit Maintenance

Powerful, real-time OSINT suite for tracking every activity on Instagram - from story updates and bio changes to follower shifts, providing stunning dashboards and instant alerts to keep you in the loop.

instagram_monitor_web_dashboard_screenshot

🚀 Quick Install & Run

Python from PyPI

New to Python or unsure what is installed? Follow the Python install walkthrough first.

pip install instagram_monitor

Run setup wizard:

instagram_monitor --setup

Docker image - fastest container setup

macOS or Windows

Use a macOS shell or Windows PowerShell with a Docker-compatible runtime that provides the docker CLI.

docker run --rm --pull=always -it --init -v "${PWD}:/data:z" -v instagram_monitor_session:/home/instagram/.config/instaloader misiektoja/instagram-monitor:latest --setup

In Windows Command Prompt replace ${PWD} with %cd% above.

Linux

Run the container with your numeric user and group IDs (--user "$(id -u):$(id -g)" below). This lets the container write files that your host account can edit.

docker run --rm --pull=always -it --init --user "$(id -u):$(id -g)" -v "$PWD:/data:z" -v instagram_monitor_session:/home/instagram/.config/instaloader misiektoja/instagram-monitor:latest --setup

Docker Compose - shorter recurring commands

Download the Compose file:

curl -fsSLO https://raw.githubusercontent.com/misiektoja/instagram_monitor/refs/heads/main/docker-compose.yml

Linux container engine requires to export your numeric user ID and group ID so files created in the current directory belong to you instead of root.

export INSTAGRAM_MONITOR_UID="$(id -u)"
export INSTAGRAM_MONITOR_GID="$(id -g)"

Docker-compatible runtimes on macOS and Windows normally do not need these values.

Run setup wizard:

docker compose run --rm --pull=always instagram_monitor --setup

For the manual single-file method, optional browser support and upgrade commands for every installation method, see Installation.

instagram_monitor demo: install, setup wizard and run

Features

🔍 Real-time Tracking

  • Profile Activity: Monitor new posts, reels and stories in real-time.
  • Private Posts: Detects collab posts leaking from private accounts via public collaborators.
  • Audience Insights: Track changes in followings and followers.
  • Visual Changes: Detect updates to profile pictures and visibility (public/private).
  • Bio Updates: Stay informed about changes to user bio.

📥 Media Download

  • Anonymous Stories: Download story images and videos without leaving traces.
  • High-Quality Media: Save post images, reel videos and profile pictures.
  • Batch Support: Monitor and download media for multiple users simultaneously.

📱 Interactive Dashboards

  • Guided Setup: Interactive wizard writes a ready-to-run config for PyPI, script and Docker workflows.
  • Terminal Dashboard: Beautiful, live-updating CLI interface with real-time stats.
  • Web Dashboard: Modern, local web UI with activity feeds and remote controls.
  • Image Support: View profile pictures and media directly in your terminal (via imgcat).

🔔 Smart Notifications

  • Multi-Channel: Instant alerts via Email, Discord webhooks and native ntfy notifications.
  • Rich Alerts: Attached media (profile pics, stories, posts) in Discord notifications.
  • Error Reporting: Be notified if the monitoring process hits a snag.

🛡️ Privacy & Detection Avoidance

  • Be Human Mode: Simulates random user actions to blend in.
  • Jitter Mode: Adds human-like delays to HTTP requests.
  • Hour-Range Checking: Limits activity to specific hours of the day.
  • Account Flexibility: Works with or without a logged-in Instagram account.
  • Browser Session Import: Reuse Firefox, Chrome, Brave or Chromium sessions with profile selection.
  • Browser TLS Impersonation: Routes traffic through curl_cffi to mimic a real browser's TLS fingerprint and dodge fingerprint-based blocks.
  • Proxy Support: Route Instagram and webhook traffic through your own proxy.
  • Privacy Substitutions: Mask or rename identities across all output, logs and notifications.
  • Block Awareness: Detects shadowbans and flagged sessions to avoid false alerts.

⚙️ Power Features

  • CSV Logging: Log all activities and profile changes with timestamps.
  • Flexible Config: Support for files, dotenv and environment variables.
  • Follower Churn: Detailed tracking of exactly who followed or unfollowed.
  • Follow Analysis: Inspect mutual, not-following-back and fan relationships offline from saved lists with --analyze-follows or the Web Dashboard.
  • Batched Fetching: Throttle follower/following downloads into delayed batches.
  • Remote Control: Manage tracking features via signals or the web UI.
  • Docker Ready: Run via Docker Hub, Docker Compose or local image build with persisted config, dotenv and sessions.

instagram_monitor_terminal_dashboard

instagram_monitor_log_screenshot

Common Commands

Use Quick Install & Run above for first-time setup. The table uses PyPI commands. For manual script, direct Docker and Docker Compose equivalents, see Run Individual Commands.

I want to... Run this
Try public monitoring without a login instagram_monitor <target_insta_user>
Monitor a target with a logged in session (see stories, reels and follower details) Import a browser session then run instagram_monitor -u <your_insta_user> <target_insta_user>
Monitor targets saved in TARGET_USERNAMES instagram_monitor --config-file instagram_monitor.conf
Start a browser control panel without targets instagram_monitor --web-dashboard
Monitor several accounts without login instagram_monitor target_1 target_2 or instagram_monitor --targets target_1,target_2
Check the selected login, connectivity and targets instagram_monitor --doctor

Running the tool with no arguments offers the wizard if you have not saved any targets or enabled the Web Dashboard. If targets are already saved, it starts monitoring them.

For browser choices, saved targets, configuration backups and setup recovery, see the full Setup & First Run guide.

For container operation, browser profiles, email alerts, Discord, ntfy and advanced settings, see Configuration and Usage. Keep private webhook URLs in .env by using instagram_monitor --set-webhook-url or enter them through the setup wizard. See Webhook Notifications for complete setup and testing instructions.

Documentation

Full documentation is available at misiektoja.github.io/instagram_monitor:

  • Installation - PyPI, manual script, Docker installation and upgrades
  • Setup & First Run - setup wizard, login choices and first run
  • Configuration - settings precedence, saved targets, session login, SMTP and secrets
  • View Modes - text, terminal and web dashboards
  • Usage - command formats, monitoring, container operation, notifications, proxy and output
  • Anti-detection - avoid challenges and account suspension
  • Troubleshooting - the --doctor self-check and logging levels

Change Log

See RELEASE_NOTES.md for details.

Contributing

Bug reports, documentation fixes and code contributions are welcome. See CONTRIBUTING.md for the development setup, the checks CI enforces and what a change needs before it is merged. Participation is covered by the Code of Conduct.

Security

Report a suspected vulnerability privately through GitHub security advisories, never as a public issue. SECURITY.md covers the reporting process, the supported versions and the security posture of the Web Dashboard, stored secrets and monitored account data.

Maintainers

License

Licensed under GPLv3. See LICENSE. Dependency licenses are listed in THIRD_PARTY_NOTICES.md.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

instagram_monitor-3.9.tar.gz (323.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

instagram_monitor-3.9-py3-none-any.whl (218.1 kB view details)

Uploaded Python 3

File details

Details for the file instagram_monitor-3.9.tar.gz.

File metadata

  • Download URL: instagram_monitor-3.9.tar.gz
  • Upload date:
  • Size: 323.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for instagram_monitor-3.9.tar.gz
Algorithm Hash digest
SHA256 414bb49588be006e5f63ee6d4058d94263672f5651dab2a07753a66945c27ece
MD5 9408bdee7c03b9da19d18dda8e91f899
BLAKE2b-256 ccdcabb65e239c7030bf399e67e2f92d19dc005fced01b80fe55acd7e452973f

See more details on using hashes here.

Provenance

The following attestation bundles were made for instagram_monitor-3.9.tar.gz:

Publisher: publish.yml on misiektoja/instagram_monitor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file instagram_monitor-3.9-py3-none-any.whl.

File metadata

  • Download URL: instagram_monitor-3.9-py3-none-any.whl
  • Upload date:
  • Size: 218.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for instagram_monitor-3.9-py3-none-any.whl
Algorithm Hash digest
SHA256 3db6d44c19299b0806511fe4191896991c7f58a5b28b2cdb72c5cae91651aa64
MD5 977b8938b34440a57ec74fb655eafb10
BLAKE2b-256 2dbfd166c96101b7e7940db9289dac91e7f9fa4fa79ca9b84af0822625dbec65

See more details on using hashes here.

Provenance

The following attestation bundles were made for instagram_monitor-3.9-py3-none-any.whl:

Publisher: publish.yml on misiektoja/instagram_monitor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

3.9 This release

2 files

3.8.1

2 files

3.8

2 files

3.7.1

2 files

3.7

2 files

3.6.1

2 files

3.6

2 files

3.5

2 files

3.4

2 files

3.3

2 files

3.2

2 files

3.1

2 files

3.0

2 files

2.0.4

2 files

2.0.3

2 files

2.0.2

2 files

2.0.1

2 files

2.0

2 files

1.9.1

2 files

1.9

2 files

1.8.1

2 files

1.8

2 files

1.7

2 files

1.6.2

2 files

1.6.1

2 files

1.6

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page