Calendar ICS Analyzer
Pricing
from $0.01 / 1,000 results
Calendar ICS Analyzer
Google Cal, Outlook, or Apple Cal exports to get comprehensive meeting culture reports. Calculates meeting costs, identifies "Could Have Been an Email" candidates, measures focus time & provides actionable recommendations. Perfect for executives, managers & consultants with productivity assessments
Pricing
from $0.01 / 1,000 results
Rating
0.0
(0)
Developer

John Rippy
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Upload your .ics calendar export and get a comprehensive meeting culture analysis with costs, email scores, and actionable recommendations. Generate PDF reports.
Features
- Automated data collection
- Structured output format
- Error handling
- Pay-per-event billing
Quick Start
{"input": "your input here"}
Demo Mode
Set demoMode: true to test with sample data (no charges). When you're ready for real results, set demoMode: false or omit it.
{"demoMode": true,...}
Input Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| See input schema |
Output Format
Executive Summary
{"summary": {"totalMeetings": 156,"totalHours": 312,"totalCost": 22500,"meetingCultureScore": 62,"weeklyAverage": {"meetings": 12,"hours": 24,"cost": 1730}},"topInsights": ["34% of your meetings could have been emails","Your most expensive recurring meeting costs $12,400/year","You have 3.2 hours of focus time per day on average","Tuesday and Wednesday are your heaviest meeting days"],"recommendations": [{"priority": "high","action": "Cancel or convert 'Weekly Status Sync'","potentialSavings": 8320,"rationale": "Email score of 85%, 16 attendees, no agenda"}]}
Full Analysis
{"overview": {"periodAnalyzed": "2024-01-01 to 2024-03-31","totalMeetings": 156,"totalHours": 312,"totalCost": 22500,"averageMeetingLength": 48,"averageAttendees": 4.2},"meetingCultureScore": {"overall": 62,"breakdown": {"focusTime": 68,"fragmentation": 55,"recurringEfficiency": 60,"attendeeOptimization": 65}},"costBreakdown": {"recurring": 18200,"oneTime": 4300,"byDayOfWeek": {"monday": 4200,"tuesday": 5800,"wednesday": 5200,"thursday": 4100,"friday": 3200}},"asyncCandidates": [{"title": "Weekly Status Sync","emailScore": 85,"annualCost": 8320,"reason": "Status updates work better async"}],"recurringMeetings": [{"title": "Team Standup","frequency": "daily","annualCost": 15600,"attendees": 8,"emailScore": 72,"recommendation": "Consider 3x/week instead of daily"}],"focusTimeAnalysis": {"averageBlocksPerDay": 2.1,"averageBlockLength": 95,"fragmentationScore": 55,"bestFocusDay": "Friday","worstFocusDay": "Wednesday"},"recommendations": [...],"cta": {"message": "Get real-time tracking with Meeting Cost Tracker","url": "https://meeting.localhowl.com"}}
Pricing
This actor uses pay-per-event billing:
data_point: $0.01 per result
Use Cases
1. Quarterly Personal Audit
const result = await apifyClient.actor("localhowl/calendar-ics-analyzer").call({icsUrl: "https://example.com/my-calendar.ics",dateRange: "last_quarter",generateReport: true});console.log(`Meeting Culture Score: ${result.meetingCultureScore.overall}`);console.log(`Potential Savings: $${result.potentialSavings}`);
2. Team Meeting Audit
Export calendars from team members and analyze patterns:
const teamCalendars = ["alice.ics", "bob.ics", "carol.ics"];const results = [];for (const cal of teamCalendars) {const result = await apifyClient.actor("localhowl/calendar-ics-analyzer").call({icsUrl: `https://example.com/${cal}`,dateRange: "last_month"});results.push(result);}// Aggregate team insights
3. Before/After Comparison
Track improvement over time by comparing quarters:
const q1 = await analyze({ dateRange: "2024-Q1" });const q2 = await analyze({ dateRange: "2024-Q2" });console.log(`Score improved from ${q1.score} to ${q2.score}`);console.log(`Saved ${q1.totalCost - q2.totalCost} per quarter`);
Common Problems & Solutions
"Invalid API key" error
Cause: Your API key is wrong, expired, or doesn't have the right permissions. Fix: Double-check your API key. Make sure you copied it exactly without extra spaces.
"Rate limit exceeded" error
Cause: You've hit the API's rate limits. Fix: Wait a few minutes, then try again. Consider reducing the number of concurrent requests.
Empty or incomplete results
Cause: The target may have anti-scraping protection or the data doesn't exist. Fix:
- Check if the URL/search query is correct
- Try with different parameters
- Some sites may block automated access
Demo data showing instead of real results
Cause: demoMode is still set to true.
Fix: Set demoMode: false and provide your API key(s).
Built by John Rippy | Actor Arsenal