Trakkr Docs

Workflows

Most people hear "workflow" and picture Zapier. Trakkr workflows look like that on the surface (a trigger, some conditions, an action), but the things they listen for and the things they can do are different. A Zapier zap fires when a row appears in a sheet or an email arrives in a folder. A Trakkr workflow fires when your AI visibility moves: a competitor takes a prompt you were winning, ChatGPT cites one of your pages for the first time, GPTBot stops crawling your site, a citation source you'd been tracking goes cold.

The action side is just as native. Yes, you can send a Slack ping or hit a webhook. But you can also kick off an AI-written article aimed at the prompt you just lost, draft an outreach email to the source that just cited you, push a new prompt into tracking, or generate a stakeholder PDF and mail it Monday morning. The whole loop, from "something changed in AI" to "we did something about it," can run without you touching the dashboard.

What a workflow actually is

A workflow has three pieces.

  1. A trigger. One event, with conditions you set. Example: visibility dropped by 10% or more on ChatGPT. The trigger only fires when an event matching that shape lands.
  2. Conditions on the trigger. Thresholds, scopes, allowlists, severity gates. You're not chaining if/and/or rules in a separate step, you're tuning the trigger itself so it doesn't pull on every twitch.
  3. Actions. An ordered list of one or more things to do when the trigger fires. Each action has its own config. They run top to bottom in the same run.

Workflows in Trakkr are linear, not graphs. No branches, no per-action conditions, no loops. If you need different actions for different scenarios, that's two workflows on the same trigger with different conditions. That constraint is deliberate, it keeps the editor readable and the runs debuggable.

The trigger catalog

There are thirty-odd triggers grouped into five families. You pick one per workflow.

Insights & monitoring

The "your AI visibility moved" family. These fire off your daily Prompts run and the metrics it produces.

TriggerFires when
Visibility ChangesYour overall visibility score moves beyond a threshold (with direction and per-model filters)
Competitor ActivityA specific competitor (or any competitor) gains or loses visibility past a threshold
Rank ChangedYour position on a prompt moves by N spots, or crosses a "top 5" boundary
Perception ShiftA perception attribute score moves significantly
Prompt GapA prompt where AI discusses your category but doesn't recommend you, with a minimum competitor count
Audit Score DroppedA site's AI-readiness audit drops by N points (filter by severity)

Discovery & citations

The "something new appeared" family.

TriggerFires when
New CitationA citation source is discovered (filter by minimum domain authority or specific domains)
New OpportunityA high-fit outreach opportunity is detected (filter by fit score, DA)
Research CompletedA research run finishes (filter by minimum gaps found or visibility change)
Competitor AddedA new competitor enters tracking, manually or via research
Page Cited by AIChatGPT, Claude, or Perplexity cites one of your pages in a conversation (filter by model, URL pattern, first-time-only)
Citation LostA page that AI had been citing stops appearing (filter by model, minimum days previously cited)

Crawler & AI access

The "something is happening at the crawler layer" family. These need Crawlers or AI Pages data flowing.

TriggerFires when
AI Crawler Activity SpikeAn AI bot's traffic jumps N× over its baseline (per-bot or per-category allowlist, optional URL pattern)
AI Bot Discovers a PageGPTBot, ClaudeBot, etc. crawls a matching URL for the first time
AI Bot Goes SilentA bot hasn't visited in N days (usually a sign that robots.txt or your server broke)
AI Crawler Errors SpikeBots start hitting 4xx or 5xx pages above a threshold
Bot Access ChangedA bot gets blocked or unblocked in robots.txt
Cited Page BlockedA page AI is actively citing gets blocked, with a minimum citation count
AI Referral TrafficChatGPT, Perplexity, or another AI tool sends referral traffic (filter by source, first-referral-only, min visits)

Content

The "Trakkr produced or shipped something" family.

TriggerFires when
Article GeneratedAn article finishes generating (filter by source, minimum word count)
Article PublishedAn article is marked published (filter by destination)
Campaign CompletedA multi-article campaign finishes (filter by status, min article count)
Report ReadyA daily or weekly report finishes

System & actions

TriggerFires when
Action CreatedA new Action surfaces in your feed (filter by category, source, priority level, score, effort, impact, keyword)
Action CompletedA team member marks an Action done (same filter set)
ScheduledOn a schedule you define: daily / weekly / monthly, with hour and timezone
Brand CreatedA new brand is added to your account

The action catalog

When the trigger fires, the run executes its actions top to bottom. You can mix any of these in one workflow.

Notifications

ActionWhat it doesNeeds
Send EmailEmail to one or more recipients, with optional AI summary, reply-to, cc/bcc, and digest batching (instant / 15min / hourly / daily)Nothing
Send to SlackPost to a channel, simple text or rich blocks, with @ mentions and an optional "View in Trakkr" buttonSlack OAuth
Send to TeamsPost to a Teams channel, simple text or Adaptive CardTeams webhook URL
WebhookPOST / PUT / PATCH to any URL with custom headers, auth (bearer / basic / API key), and payload templateNothing

Trakkr-native actions

ActionWhat it does
Generate ArticleWrite a full article aimed at a prompt from the trigger event (or a custom prompt). Picks a template automatically based on the trigger type, or use your own
Create CampaignGenerate a coordinated batch of articles for the top prompts in the event (or top gaps, or a custom list). Sequential or parallel
Generate SummaryAI-written briefing of what just happened. Short or detailed, executive / technical / general audience
PDF ReportBuild a formatted PDF (visibility, competitor, full, executive, weekly, stakeholder, client). Optionally emails it
Draft OutreachPersonalized outreach email aimed at a citation or opportunity, with a chosen purpose (citation request, partnership, data share, guest post, correction) and tone
Add Prompt to TrackingPush prompts from the event straight into your active list

Integrations

ActionWhat it doesNeeds
Publish to your sitePush an article to a connected CMSA connected site
Google SheetsAppend a row to a connected sheetGoogle OAuth
Create Work ItemRoute a task or issue into Linear, GitHub, Notion, Asana, Jira, Trello, or SlackProvider OAuth
Notion PageCreate a page in a Notion database with templated title, body, and propertiesNotion OAuth
Salesforce TaskCreate or update a Salesforce recordSalesforce credentials
HubSpot TaskCreate or update a HubSpot recordHubSpot credentials
Send to CRMGeneric CRM recordCRM credentials

The integrations themselves live in Integrations, which is where you connect Slack, Notion, Google Sheets, Linear, and friends. A workflow can't use what isn't connected, so the editor will tell you what's missing when you pick an action.

Building one

The flow is the same whether you start from a template or from scratch.

From the Workflows page, hit New Workflow (or Use template, more on that below). The editor opens with three sections stacked:

  1. Trigger. A command-palette-style picker grouped by Insights, Discovery, Crawler, Content, System. Pick one, the relevant condition fields appear inline.
  2. Actions. Click Add action to drop one in. Repeat for as many as you need. Each one expands into its own config card.
  3. Settings. Cooldown, retries, failure notification, and the workflow's name and description.

Give it a name you'll recognize at 9pm when an alert fires ("Slack ping when ChatGPT loses us a prompt" beats "Workflow 4").

Testing before you ship

Two modes, both run from the editor.

ModeWhat it doesWhen to use
PreviewBuilds a sample event, evaluates whether the trigger would fire, and prints a one-line preview of each action ("Would post rich message to Slack channel: #ai-alerts"). Doesn't actually send anything.Sanity check trigger conditions and confirm actions are configured
Live testSame sample event, but actually executes every action: real Slack message, real email, real webhook POST. Needs editor permission on the brand.Before you ship anything that pages a human

:::callout warn Live test really sends. If the workflow posts to #exec-alerts, a live test will too. Use a sandbox channel for the first run, or swap the recipient to yourself.

Templates

The template gallery sits inside the New Workflow flow. Each one is a pre-wired trigger + action combo you can use as-is or tweak.

TemplateWhat it does
Visibility Drop AlertVisibility down 10%+ → AI summary + email
Weekly Stakeholder ReportMondays at 9am ET → PDF report → email
Competitor Surge AlertAny competitor up 15%+ → summary + Slack
New Actions to SlackNew high-priority Action created → Slack
ChatGPT or Claude saw your launchGPTBot, ClaudeBot, PerplexityBot, or OAI-SearchBot crawls /blog/*, /products/*, /pricing*, or /launch* for the first time → Slack
AI bot stopped visitingGPTBot or ClaudeBot silent 7+ days → email
AI crawlers hitting broken pages4xx/5xx error rate spikes for major bots → email
AI crawler activity spikeAny major bot 2× above baseline → Slack
Your page was cited by AIFirst-time citation of one of your pages → Slack
Lost a citation in AIA page cited for 3+ days stops appearing → email
AI bot access changed in robots.txtGPTBot, ClaudeBot, PerplexityBot, or OAI-SearchBot blocked or unblocked → email + Slack
Cited page blocked from AIA page with 1+ citation gets blocked → email
AI is sending you trafficLLM referral traffic detected → Slack

Click Use Template, fill in the recipient / channel / URL fields, save. Same editor, same tests, just with a head start.

Workflows vs Actions

Two automation surfaces, different jobs.

ActionsWorkflows
What it gives youA prioritized to-do list AI generated from your dataA rule that runs when something happens
Who decides what to doYou (Actions is recommendations)The workflow does it automatically
When it runsSurfaced when patterns emergeWhen the trigger event fires
Best forStrategic, judgement-y workRepeatable, mechanical responses

They pair well. Actions surfaces "ChatGPT lost us this prompt, here's how to fix it." A workflow on the same action_created trigger pings Slack so the right person sees it the moment it lands.

If you keep finding yourself doing the same thing to the same kind of Action, click Automate on an Action card. That opens a shortcut into the workflow editor pre-filled with an action_created trigger filtered to that shape, with your usual destination (email, Slack, webhook, task, sheet) ready to go.

Plan limits

PlanActive workflows per brand
Free0 (paid plan required)
Trial1
Growth3
ScaleUnlimited

Limits apply to active workflows. Paused and deleted workflows don't count.

Common questions

Can a workflow branch, like Zapier paths?

No. One trigger, one ordered list of actions. If you need different actions for different scenarios, create two workflows on the same trigger with different conditions.

Can I chain workflows together?

Not directly, and not by design. Most chains are better expressed as one workflow with multiple actions. If you genuinely need workflow A to fire workflow B, do it with a webhook action pointing at your own endpoint, which posts back into Trakkr's API.

Where do the events come from?

Most fire off Trakkr's daily run for that brand. Citation, perception, rank, competitor, and prompt-gap events come out of the 3am UTC report. Crawler events fire as crawler logs land. AI-conversation citation events fire from the conversation-tracking pipeline. Scheduled triggers fire on the schedule you set, in the timezone you set.

My workflow fired but no message arrived. What's wrong?

In order of likelihood: the integration disconnected (re-auth in Integrations); the channel / recipient field is empty; the payload template is malformed JSON; the destination rate-limited you. Open the run from the Workflows list, the action log shows the exact error and the response from the target.

What's the difference between Preview and Live test?

Preview evaluates the trigger and shows you what the actions would do, no side effects. Live test actually runs every action against the real integration. Use Preview to check your logic, Live to make sure the wiring works before you ship.

Are credentials stored encrypted?

OAuth tokens are stored in the workflow_integrations table under your user account, scoped per provider. Webhook auth (bearer tokens, basic auth, API keys) is stored alongside the action config. Treat them like any other secret in Trakkr: anyone with editor access to the brand can read and trigger workflows that use them.

Can I see why a trigger didn't fire?

Yes, in the live test result. The trigger reason tells you which condition failed ("Change is positive (+3.2%) but trigger requires decrease," "Category 'content' not in filter: competitive, technical"). Use it to dial conditions in.

What's the audit log look like?

Each run stores its trigger event, every action's status (pending / running / completed / failed / skipped), per-action duration, and any error message. Run history is in the workflow detail view; for crawler-specific runs there's also a live feed on the Crawlers dashboard.