Skip to main content

Overview

Campaign Automation takes the manual work out of monitoring by automating data collection, analysis, and reporting.

Scheduled Runs

Set campaigns to run hourly, daily, or weekly

Automated Reports

Receive reports via email or Slack automatically

Smart Alerts

Get notified only when important changes occur

Workflow Integration

Connect with your existing tools via webhooks

Key Features

Automated Scheduling

Run campaigns automatically without manual intervention:
{
  "campaign": "Brand Monitoring",
  "schedule": {
    "frequency": "daily",
    "time": "09:00",
    "timezone": "America/New_York"
  },
  "actions": ["collect_data", "analyze", "report"]
}

Report Generation

Automatically generate and distribute reports:
  • Daily summaries at your chosen time
  • Weekly digests every Monday
  • Monthly overviews on the 1st
  • Custom schedules as needed

Smart Alerts

Get notified when it matters:
1

Define Thresholds

Set what changes trigger alerts (e.g., ranking drops > 5 positions)
2

Choose Channels

Email, Slack, webhook, or mobile push
3

Set Urgency

Critical, high, medium, or low priority
4

Configure Timing

Immediate, daily digest, or weekly summary

Workflow Integration

Connect FAII with your existing tools:
  • Zapier - Trigger 1000+ integrations
  • Make (Integromat) - Advanced automation
  • Custom Webhooks - Your own systems
  • API - Full programmatic control

Use Cases

Daily SEO Monitoring

Automate daily rank tracking and get morning reports:
{
  "campaign": "Daily SEO Check",
  "schedule": "daily at 6 AM",
  "actions": [
    "check_rankings",
    "compare_competitors",
    "detect_serp_changes",
    "email_summary"
  ],
  "alerts": {
    "ranking_drop": 5,
    "new_competitor": true,
    "serp_feature_lost": true
  }
}

Weekly Client Reporting

Generate automated client reports every week:
1

Set Schedule

Every Friday at 5 PM
2

Collect Data

Week’s performance metrics
3

Generate Report

PDF with charts and insights
4

Distribute

Email to client contacts

Real-Time Crisis Monitoring

Get immediate alerts for brand protection:
Crisis Mode: When enabled, you’ll receive instant notifications for any negative mentions or significant ranking drops.
{
  "campaign": "Brand Protection",
  "mode": "crisis",
  "monitoring": "continuous",
  "alerts": {
    "negative_sentiment": "immediate",
    "ranking_drop": "immediate",
    "competitor_surge": "immediate"
  },
  "channels": ["email", "sms", "slack"]
}

Configuration

Campaign Settings

SettingDescriptionOptions
frequencyHow often to runhourly, daily, weekly, monthly
timeWhen to run00:00 - 23:59
timezoneYour timezoneAll timezones supported
retryRetry on failure0-5 attempts
timeoutMax run duration1-60 minutes

Report Templates

Choose from pre-built templates or create custom ones:

Executive Summary

High-level overview for stakeholders

Detailed Analysis

In-depth data for SEO teams

Client Report

Branded reports for clients

Custom

Build your own template

Alert Rules

Create sophisticated alert rules:
{
  "rules": [
    {
      "condition": "ranking_drop > 5 AND position_is > 10",
      "action": "send_email",
      "priority": "high"
    },
    {
      "condition": "new_serp_feature AND position_is <= 3",
      "action": "send_slack",
      "priority": "medium"
    },
    {
      "condition": "competitor_ranks_1 AND we_rank > 5",
      "action": "create_task",
      "priority": "low"
    }
  ]
}

Report Formats

Email Reports

Beautifully designed HTML emails:
  • Header with campaign name and date range
  • Key metrics with trends
  • Charts embedded as images
  • Top changes highlighted
  • Action items suggested
  • Footer with links to dashboard

PDF Reports

Professional PDF documents:
  • Custom branding (logo, colors)
  • Executive summary page
  • Detailed metrics tables
  • Full-page charts
  • Competitor comparisons
  • Exportable and shareable

Slack Notifications

Rich Slack messages with:
  • Emoji indicators for trends
  • Inline metrics
  • Thread-based discussions
  • Button actions (“View Dashboard”, “Acknowledge”)
  • @mentions for team members

Webhook Payloads

Structured JSON data:
{
  "event": "campaign_completed",
  "campaign": {
    "id": "camp_123",
    "name": "Brand Monitoring",
    "type": "serp"
  },
  "metrics": {
    "avg_position": 3.2,
    "visibility_score": 87.5,
    "serp_features": 12
  },
  "changes": [
    {
      "type": "ranking_drop",
      "keyword": "project management",
      "from": 2,
      "to": 5
    }
  ],
  "timestamp": "2025-10-18T10:00:00Z"
}

Integration Examples

Zapier Integration

1

Create Zap

New Zap with FAII as trigger
2

Choose Trigger

“New Campaign Result”
3

Add Actions

  • Create Google Sheets row
  • Post to social media
  • Create Trello card
  • Update CRM

Custom Webhook

// Your endpoint receives campaign data
app.post('/faii-webhook', (req, res) => {
  const { campaign, metrics, changes } = req.body;
  
  // Process the data
  if (metrics.visibility_score < 70) {
    sendAlertToTeam(campaign.name);
  }
  
  // Store in your database
  await db.campaigns.update(campaign.id, metrics);
  
  // Respond to FAII
  res.json({ status: 'received' });
});

API Automation

// Schedule campaigns programmatically
const campaign = await faii.campaigns.create({
  name: 'Weekly SEO Check',
  type: 'serp',
  keywords: ['brand', 'products'],
  schedule: {
    frequency: 'weekly',
    day: 'monday',
    time: '09:00'
  },
  reports: {
    email: ['[email protected]'],
    format: 'pdf'
  }
});

// Get campaign results
const results = await faii.campaigns.getResults(campaign.id);

// Update schedule
await faii.campaigns.updateSchedule(campaign.id, {
  frequency: 'daily'
});

Best Practices

Pro Tip: Start with daily automation for critical keywords, then expand to weekly for long-tail terms. This balances data freshness with API usage.

Scheduling Strategy

Campaign TypeRecommended Frequency
Brand monitoringHourly
Core keywordsDaily
Competitor trackingDaily
Long-tail keywordsWeekly
Historical analysisMonthly

Alert Fatigue Prevention

Avoid overwhelming your team:
  1. Set meaningful thresholds - Not every 1-position change
  2. Use digest mode - Group minor changes
  3. Priority tiers - Critical vs. informational
  4. Quiet hours - No alerts during nights/weekends
  5. Acknowledge system - Mark alerts as seen

Report Distribution

  • Weekly summaries
  • High-level metrics
  • Trend indicators
  • Action-focused

Pricing

Campaign Automation is included in all plans:
  • Starter: 5 automated campaigns, daily schedule
  • Professional: 25 automated campaigns, hourly schedule
  • Enterprise: Unlimited campaigns, custom schedules

API Reference

Manage automation via API:
// List automated campaigns
const campaigns = await faii.automation.list();

// Create automation
const automation = await faii.automation.create({
  campaign_id: 'camp_123',
  schedule: 'daily',
  reports: ['email', 'slack']
});

// Pause automation
await faii.automation.pause(automation.id);

// Resume automation
await faii.automation.resume(automation.id);
Full API documentation →

Support

Need help with automation?