{
  "schemaVersion": 1,
  "id": "tactiq-vs-grain",
  "products": [
    "tactiq",
    "grain"
  ],
  "conclusion": "Tactiq and Grain are closely matched for core workflows. Both support free plan, soc 2, gdpr compliance, zoom support, and google meet support. Tactiq has confirmed monthly pricing for one user of £5.83. Grain has confirmed API access and bot-based recording. Transcription languages is 60 for Tactiq and 130 for Grain.",
  "decisionPoints": [
    {
      "path": "pricing.costForOneUser",
      "importance": 9,
      "kind": "evidence-gap",
      "text": "Tactiq has confirmed monthly pricing for one user of £5.83; monthly pricing for one user is not yet confirmed for Grain."
    },
    {
      "path": "technical.api",
      "importance": 8,
      "kind": "evidence-gap",
      "text": "Grain has confirmed API access; API access is not yet confirmed for Tactiq."
    },
    {
      "path": "vertical.botBasedRecording",
      "importance": 7,
      "kind": "value-difference",
      "text": "Grain supports bot-based recording; Tactiq is verified as not supporting it."
    },
    {
      "path": "vertical.transcriptionLanguages",
      "importance": 7,
      "kind": "value-difference",
      "text": "Transcription languages is 60 for Tactiq and 130 for Grain."
    }
  ],
  "sharedStrengths": [
    {
      "path": "pricing.freeTier",
      "label": "Free plan",
      "importance": 9
    },
    {
      "path": "vertical.soc2",
      "label": "SOC 2",
      "importance": 8
    },
    {
      "path": "vertical.gdprCompliance",
      "label": "GDPR compliance",
      "importance": 8
    },
    {
      "path": "vertical.zoomSupport",
      "label": "Zoom support",
      "importance": 7
    },
    {
      "path": "vertical.googleMeetSupport",
      "label": "Google Meet support",
      "importance": 7
    }
  ],
  "coverage": {
    "a": 62,
    "b": 72,
    "gap": 10
  },
  "facts": [
    {
      "path": "vertical.zoomSupport",
      "label": "Zoom support",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-4d1c583a13524e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-4d1c583a13524e08",
            "excerpt": "Zoom Transcribe meetings in Zoom.",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-1ddabd3549396ab4"
        ],
        "evidence": [
          {
            "sourceId": "ingest-1ddabd3549396ab4",
            "excerpt": "Grain + Zoom Automatically record and transcribe meetings",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.googleMeetSupport",
      "label": "Google Meet support",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-4d1c583a13524e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-4d1c583a13524e08",
            "excerpt": "Google Meet Transcribe meetings in Google Meet.",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-1ddabd3549396ab4"
        ],
        "evidence": [
          {
            "sourceId": "ingest-1ddabd3549396ab4",
            "excerpt": "Grain + Google Meet Record, transcribe, highlight, and summarize your meetings",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.microsoftTeamsSupport",
      "label": "Microsoft Teams support",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-4d1c583a13524e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-4d1c583a13524e08",
            "excerpt": "Microsoft Teams Transcribe meetings in Microsoft Teams.",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-1ddabd3549396ab4"
        ],
        "evidence": [
          {
            "sourceId": "ingest-1ddabd3549396ab4",
            "excerpt": "Grain + Microsoft Teams Record, transcribe, highlight, and summarize your meetings",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.botBasedRecording",
      "label": "Bot-based recording",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": false,
        "status": "verified",
        "sourceIds": [
          "ingest-4d1c583a13524e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-4d1c583a13524e08",
            "excerpt": "Get live transcriptions without an AI bot joining the meeting. No bot joins call",
            "supports": "negative"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-51a194b50948c600"
        ],
        "evidence": [
          {
            "sourceId": "ingest-51a194b50948c600",
            "excerpt": "Video recording with bots",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.botFreeRecording",
      "label": "Bot-free recording",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-4d1c583a13524e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-4d1c583a13524e08",
            "excerpt": "Get live transcriptions without an AI bot joining the meeting. No bot joins call",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-51a194b50948c600"
        ],
        "evidence": [
          {
            "sourceId": "ingest-51a194b50948c600",
            "excerpt": "Bot-less transcription",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.realTimeTranscription",
      "label": "Real-time transcription",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-4d1c583a13524e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-4d1c583a13524e08",
            "excerpt": "Transcribe meetings in real-time with no bot.",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-51a194b50948c600"
        ],
        "evidence": [
          {
            "sourceId": "ingest-51a194b50948c600",
            "excerpt": "Grain transcribes your computer's audio without meeting bots joining your call.",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.transcriptionLanguages",
      "label": "Transcription languages",
      "group": "Capacity",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": 60,
        "status": "verified",
        "sourceIds": [
          "ingest-4d1c583a13524e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-4d1c583a13524e08",
            "excerpt": "Supports 60+ languages",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": 130,
        "status": "verified",
        "sourceIds": [
          "ingest-51a194b50948c600"
        ],
        "evidence": [
          {
            "sourceId": "ingest-51a194b50948c600",
            "excerpt": "Grain supports over 130 languages for meeting transcription and AI notes.",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.speakerIdentification",
      "label": "Speaker identification",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-4d1c583a13524e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-4d1c583a13524e08",
            "excerpt": "Speaker identification",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      }
    },
    {
      "path": "vertical.customVocabulary",
      "label": "Custom vocabulary",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      },
      "grain": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      }
    },
    {
      "path": "vertical.meetingRecording",
      "label": "Meeting recording",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": false,
        "status": "verified",
        "sourceIds": [
          "ingest-4d1c583a13524e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-4d1c583a13524e08",
            "excerpt": "Does Tactiq record the audio? No. Tactiq does not record or store the audio from your meetings.",
            "supports": "negative"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-51a194b50948c600"
        ],
        "evidence": [
          {
            "sourceId": "ingest-51a194b50948c600",
            "excerpt": "Video recording with bots",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.aiSummaries",
      "label": "AI summaries",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-4d1c583a13524e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-4d1c583a13524e08",
            "excerpt": "One Click AI Summaries Generate summaries from meeting transcripts with one click.",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-51a194b50948c600"
        ],
        "evidence": [
          {
            "sourceId": "ingest-51a194b50948c600",
            "excerpt": "Action items and meeting summaries for every meeting",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.actionItems",
      "label": "Action items",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-4d1c583a13524e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-4d1c583a13524e08",
            "excerpt": "Action Items Who does what. Instantly clear.",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-51a194b50948c600"
        ],
        "evidence": [
          {
            "sourceId": "ingest-51a194b50948c600",
            "excerpt": "Action items and meeting summaries for every meeting",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.meetingHighlights",
      "label": "Meeting highlights",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      },
      "grain": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      }
    },
    {
      "path": "vertical.videoClips",
      "label": "Video clips",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-51a194b50948c600"
        ],
        "evidence": [
          {
            "sourceId": "ingest-51a194b50948c600",
            "excerpt": "Share clips, projects, and full meeting recordings",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.searchAcrossMeetings",
      "label": "Search across meetings",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-51a194b50948c600"
        ],
        "evidence": [
          {
            "sourceId": "ingest-51a194b50948c600",
            "excerpt": "Let your AI agents query transcripts, search across meetings, and access your full meeting history.",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.askQuestionsAboutMeetings",
      "label": "Ask questions about meetings",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-4d1c583a13524e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-4d1c583a13524e08",
            "excerpt": "Ask AI Your meetings answer back.",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-51a194b50948c600"
        ],
        "evidence": [
          {
            "sourceId": "ingest-51a194b50948c600",
            "excerpt": "Ask anything inside Grain",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.crmIntegration",
      "label": "CRM integration",
      "group": "Integrations",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-51a194b50948c600"
        ],
        "evidence": [
          {
            "sourceId": "ingest-51a194b50948c600",
            "excerpt": "Sync notes and properties to HubSpot or Salesforce contacts and deals",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.hubspotIntegration",
      "label": "HubSpot integration",
      "group": "Integrations",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-4d1c583a13524e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-4d1c583a13524e08",
            "excerpt": "Workflow Integration | HubSpot Generate and sync HubSpot updates from meeting transcripts.",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-51a194b50948c600"
        ],
        "evidence": [
          {
            "sourceId": "ingest-51a194b50948c600",
            "excerpt": "Sync notes and properties to HubSpot or Salesforce contacts and deals",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.salesforceIntegration",
      "label": "Salesforce integration",
      "group": "Integrations",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-51a194b50948c600"
        ],
        "evidence": [
          {
            "sourceId": "ingest-51a194b50948c600",
            "excerpt": "Sync notes and properties to HubSpot or Salesforce contacts and deals",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.slackIntegration",
      "label": "Slack integration",
      "group": "Integrations",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-4d1c583a13524e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-4d1c583a13524e08",
            "excerpt": "Workflow Integration | Slack Extract key moments from meeting transcripts for Slack messages.",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-1ddabd3549396ab4"
        ],
        "evidence": [
          {
            "sourceId": "ingest-1ddabd3549396ab4",
            "excerpt": "Grain + Slack Share highlights from your video meetings directly in Slack.",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.salesCoaching",
      "label": "Sales coaching",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      },
      "grain": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      }
    },
    {
      "path": "vertical.conversationAnalytics",
      "label": "Conversation analytics",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      },
      "grain": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      }
    },
    {
      "path": "vertical.sentimentAnalysis",
      "label": "Sentiment analysis",
      "group": "Features",
      "importance": 7,
      "includeInCoverage": true,
      "tactiq": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      },
      "grain": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      }
    },
    {
      "path": "technical.api",
      "label": "API",
      "group": "Technical",
      "importance": 8,
      "includeInCoverage": true,
      "tactiq": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-51a194b50948c600"
        ],
        "evidence": [
          {
            "sourceId": "ingest-51a194b50948c600",
            "excerpt": "MCP Server & API",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.soc2",
      "label": "SOC 2",
      "group": "Security and compliance",
      "importance": 8,
      "includeInCoverage": true,
      "tactiq": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-4d1c583a13524e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-4d1c583a13524e08",
            "excerpt": "SOC 2 Type II attestation",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-51a194b50948c600"
        ],
        "evidence": [
          {
            "sourceId": "ingest-51a194b50948c600",
            "excerpt": "SOC 2 audited",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "vertical.gdprCompliance",
      "label": "GDPR compliance",
      "group": "Security and compliance",
      "importance": 8,
      "includeInCoverage": true,
      "tactiq": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-4d1c583a13524e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-4d1c583a13524e08",
            "excerpt": "full GDPR and HIPAA compliance",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-51a194b50948c600"
        ],
        "evidence": [
          {
            "sourceId": "ingest-51a194b50948c600",
            "excerpt": "GDPR compliant",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "pricing.freeTier",
      "label": "Free plan",
      "group": "Pricing",
      "importance": 9,
      "includeInCoverage": true,
      "tactiq": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-1bcec1c856f05e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-1bcec1c856f05e08",
            "excerpt": "Free For 1 user £0 Free forever. No credit card.",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": true,
        "status": "verified",
        "sourceIds": [
          "ingest-51a194b50948c600"
        ],
        "evidence": [
          {
            "sourceId": "ingest-51a194b50948c600",
            "excerpt": "Get started - free forever",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      }
    },
    {
      "path": "pricing.costForOneUser",
      "label": "Price per user",
      "group": "Pricing",
      "importance": 9,
      "includeInCoverage": true,
      "tactiq": {
        "value": 5.83,
        "status": "verified",
        "sourceIds": [
          "ingest-1bcec1c856f05e08"
        ],
        "evidence": [
          {
            "sourceId": "ingest-1bcec1c856f05e08",
            "excerpt": "Pro For 1 pro £5.83 GBP Per user/mo. Annual billing.",
            "supports": "positive"
          }
        ],
        "verifiedAt": "2026-09-05"
      },
      "grain": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      }
    },
    {
      "path": "commercial.affiliateProgramme",
      "label": "Affiliate programme",
      "group": "Commercial",
      "importance": 3,
      "includeInCoverage": true,
      "tactiq": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      },
      "grain": {
        "value": null,
        "status": "unknown",
        "sourceIds": [],
        "evidence": [],
        "verifiedAt": null
      }
    }
  ],
  "sources": {
    "tactiq": [
      {
        "id": "ingest-1bcec1c856f05e08",
        "url": "https://tactiq.io/buy",
        "title": "Tactiq pricing — start free, scale with your team",
        "publisher": "Tactiq",
        "kind": "vendor",
        "accessedAt": "2026-09-05"
      },
      {
        "id": "ingest-4d1c583a13524e08",
        "url": "https://tactiq.io/",
        "title": "Tactiq: AI Note Taker for Google Meet, Zoom & Teams",
        "publisher": "Tactiq",
        "kind": "vendor",
        "accessedAt": "2026-09-05"
      }
    ],
    "grain": [
      {
        "id": "ingest-51a194b50948c600",
        "url": "https://grain.com/",
        "title": "Grain | The AI Notetaker Built for Growing Teams",
        "publisher": "Grain",
        "kind": "vendor",
        "accessedAt": "2026-09-05"
      },
      {
        "id": "ingest-1ddabd3549396ab4",
        "url": "https://grain.com/integrations",
        "title": "Integrations | Grain",
        "publisher": "Grain",
        "kind": "vendor",
        "accessedAt": "2026-09-05"
      }
    ]
  }
}
