Instagram Profile Monitor
Pricing
Pay per event
Instagram Profile Monitor
Monitor Instagram profiles over time and track follower growth, engagement metrics, and profile changes with historical data and visualizations.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Hpix
Maintained by CommunityActor stats
0
Bookmarked
446
Total users
6
Monthly active users
a day ago
Last modified
Categories
Share
ℹ️ About
Track Instagram profiles over time and monitor growth trends with historical data analysis and beautiful visualizations. Perfect for tracking competitors, influencers, or your own profile's performance.

✨ Features
- Track multiple profiles simultaneously with bulk monitoring
- Historical data storage - keeps a complete history of profile changes across runs
- Unified interactive dashboard - one page for all profiles, with an at-a-glance comparison strip and per-profile switching
- Growth metrics - comprehensive analytics including absolute growth, percentage change, and daily averages
- Change detection - automatically detects and reports changes in followers, following, posts, bio, and more
- Customizable time ranges - analyze data from the last 7, 30, 90 days or more
- Engagement analytics - track average likes, comments, and views over time
⚙️ Inputs
- profiles: A list of Instagram usernames to monitor (e.g.,
["zuck", "instagram"]) - history_days: Number of days of historical data to include in plots and analytics (default: 90 days)
Example:
This input will monitor three Instagram profiles and generate analytics for the past 30 days:
{"profiles": ["zuck","cristiano","leomessi"],"history_days": 30}
💰 Pricing
The actor uses a simple, usage-based pricing model that charges based on the actions performed during each run.
| Action | Standard Price | Business (Gold Discount) |
|---|---|---|
| Start Tracking | $0.01 per run | $0.005 per run |
| New Profile Discovery & Baseline | $0.04 per profile | $0.024 per profile |
| Historical Snapshot & Trend Analysis | $0.02 per profile | $0.012 per profile |
How it works:
- Start Tracking: A fixed fee charged once per run, regardless of the number of profiles
- New Profile Discovery: Only charged when monitoring a profile for the first time (creates baseline data)
- Historical Snapshot: Charged for each profile on subsequent runs (adds data points and generates visualizations)
Example: Monitoring 5 Profiles Weekly
Let's calculate the cost for monitoring 5 Instagram profiles with weekly runs over one month:
Initial Run (Week 1):
- Start Tracking: $0.01
- New Profile Discovery (5 profiles): 5 × $0.04 = $0.20
- Total: $0.21
Subsequent Runs (Weeks 2-4):
- Start Tracking: $0.01 per run
- Historical Snapshot (5 profiles): 5 × $0.02 = $0.10
- Per run: $0.11
- 3 runs: 3 × $0.11 = $0.33
Monthly Total (4 weeks): $0.21 + $0.33 = $0.54 (Standard) / $0.32 (Business)
Running this monitoring setup continuously would cost approximately $2.16/month (Standard) or $1.30/month (Business) with 4 weekly runs.
Tips
- Run the actor on a schedule (daily or weekly) to build historical data over time
- The actor persists data between runs, so each execution adds to your historical dataset
- For best results, monitor profiles consistently to detect trends and changes
📄 Outputs
The actor provides three distinct data views:
1. Profile Overview
Complete snapshot of each profile including:
- Profile picture
- Username and bio
- Current statistics (followers, following, posts, engagement metrics)
- Growth metrics with detailed analytics
- Detected changes from the previous run
This view shows the full profile data structure with all available information in one place.
2. Statistics & Growth
Per-profile growth analytics included in every dataset item:
- Followers + Growth %
- Following + Growth %
- Total Posts + Growth %
- Avg Likes + Growth %
- Avg Comments + Growth %
- Avg Views + Growth %
Perfect for comparing profiles side by side and spotting growth trends at a glance.
3. Dashboard (Interactive Visual Analytics)
A single-page dashboard (index.html in the key-value store) that covers every monitored profile:
- Comparison strip - one card per profile with latest followers, total posts, and engagement rate, plus recent deltas. Cards double as the profile selector.
- All Stats Overview - a 3x2 grid showing all metrics in one view (followers, following, posts, average likes, comments, views)
- Aggregated Metrics - advanced analytics with 5 key performance indicators:
- Engagement Rate - Standard influencer quality metric (Likes + Comments) / Followers × 100
- View-to-Engagement Ratio - Content effectiveness measuring "scroll-stopping power"
- Post Frequency - Content consistency analysis (posts per day)
- Comment-to-Like Ratio - Audience intent indicator (high values = high-intent content)
- Growth Rate - Follower trend tracking from baseline
All dashboards are generated automatically as interactive HTML, support both light and dark mode, and render client-side with Plotly. Each profile's chart data is stored as a JSON record in the key-value store (reports-{username}-data.json). Profile pictures are downloaded once and persisted in the instagram-profile-monitor named store (profiles-{username}-pic.jpg) so the dashboard can display them without hitting Instagram's CDN (which blocks cross-origin loads) and without re-downloading on every run.
Complete Data Structure
The underlying data structure for each profile:
{"id": "314216","username": "zuck","bio": "I build stuff","stats": {"followers": 16676794,"following": 622,"total_posts": 423,"average_likes": 461145,"average_comments": 7111,"average_views": 4898992},"profile_pic_file": "550234512_18532404670058217_8758519395071163708_n.jpg","profile_pic_url": "https://...","growth": {"followers": {"absolute": 1250,"percentage": 12.5,"daily_average": 41.67,"first_value": 10000,"last_value": 11250,"period_days": 30.0},"following": {...},"total_posts": {...},"average_likes": {...},"average_comments": {...},"average_views": {...},},"changes": {"root['stats']['followers']": {"new_value": 16676794,"old_value": 16676765,"delta": 29},"root['stats']['average_likes']": {"new_value": 461145,"old_value": 461128,"delta": 17}},"dashboard": "https://api.apify.com/v2/key-value-stores/.../records/reports-zuck-data.json"}
📃 Changelog
Do you have a feature suggestion? Create an issue and let me know!
v1.1.0
- ✨ Unified single-page dashboard for all profiles, with a comparison strip and in-page profile switching
- ✨ Theme-aware charts (light and dark mode) rendered client-side with Plotly
- ✨ Profile pictures persisted in a named store, downloaded once instead of on every run
- 🔄 Replaced the per-profile HTML report pages with the unified dashboard
v1.0.0
- ✨ Added Aggregated Metrics visualization with 5 key performance indicators
- ✨ Added growth analytics with absolute, percentage, and daily average calculations
v0.1.0 (Initial Release)
- ✨ Multi-profile monitoring with historical tracking
- ✨ Automated visualization generation
- ✨ Change detection for all profile metrics
- ✨ Engagement analytics (likes, comments, views)
- ✨ Customizable history lookback period
📖 FAQ
How does historical tracking work?
The actor stores profile data that persists between runs. Each time you run the actor, it adds a new snapshot to the history, allowing you to track changes over time.
What happens on the first run?
On the first run, the actor creates a baseline snapshot of each profile. Subsequent runs will compare against this baseline and show changes. Growth metrics and visualizations require at least 2 data points, so they'll appear starting from the second run.
Can I track private accounts?
No, the actor can only track public Instagram profiles since it relies on publicly accessible data.
How often should I run this actor?
For best results, run it on a daily or weekly schedule. This builds a comprehensive historical dataset and helps you identify trends and patterns.
Can I export the data to Excel?
Yes! Apify allows you to download results in multiple formats including Excel, CSV, JSON, XML, HTML, JSONL, and RSS.
I found a bug! Can you fix it?
Please create an Issue with details about the problem, and I'll investigate it.
Can you add a new feature?
Absolutely! Use the Issues tab to suggest new features or enhancements.
⚠️ Disclaimer
This Actor monitors public data from Instagram profiles. Features are subject to changes made by Meta. Use responsibly and in accordance with Instagram's Terms of Service.
⛓️💥 Known issues
- Private and age-restricted accounts cannot be monitored (they're not publicly accessible)
- Very new profiles with minimal posting history may not have enough data for meaningful analytics
- Aggregated metrics and growth analytics require at least 2 historical data points (basic stat charts render from the first snapshot)
👀 See also
- Instagram Reels Scraper: Scrape Instagram posts, profiles, and Reels with detailed metadata
- Agentic Crawler: An intelligent web crawler powered by AI
- Bubble Sync: Synchronize data from Apify to Bubble