{
  "data": {
    "similar": [
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/azure-speech-to-text.json",
        "name": "Azure AI Speech speech-to-text",
        "score": 75.1,
        "shared": [
          "speech.stt",
          "speech.streaming",
          "speech.batch",
          "speech.languages"
        ],
        "slug": "azure-speech-to-text"
      },
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/openai-speech-to-text.json",
        "name": "OpenAI Speech to Text",
        "score": 75,
        "shared": [
          "speech.stt",
          "speech.streaming",
          "speech.batch",
          "speech.languages"
        ],
        "slug": "openai-speech-to-text"
      },
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/deepgram-stt.json",
        "name": "Deepgram Speech-to-Text (Nova-3, Flux)",
        "score": 74.4,
        "shared": [
          "speech.stt",
          "speech.streaming",
          "speech.batch",
          "speech.languages"
        ],
        "slug": "deepgram-stt"
      },
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/amazon-transcribe.json",
        "name": "Amazon Transcribe",
        "score": 73.6,
        "shared": [
          "speech.stt",
          "speech.streaming",
          "speech.batch",
          "speech.languages"
        ],
        "slug": "amazon-transcribe"
      },
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/elevenlabs-scribe.json",
        "name": "ElevenLabs Scribe Speech to Text API",
        "score": 73,
        "shared": [
          "speech.stt",
          "speech.streaming",
          "speech.batch",
          "speech.languages"
        ],
        "slug": "elevenlabs-scribe"
      },
      {
        "grade": "B",
        "json": "https://www.anchorterminal.com/tools/gladia-stt.json",
        "name": "Gladia Speech-to-Text API + MCP",
        "score": 69.8,
        "shared": [
          "speech.stt",
          "speech.streaming",
          "speech.batch",
          "speech.languages"
        ],
        "slug": "gladia-stt"
      }
    ],
    "tool": {
      "slug": "giggy-stt",
      "name": "Giggy Speech to Text",
      "vendor": "Giggy",
      "vendorUrl": "https://giggy.ai",
      "kind": "model",
      "category": "speech-to-text",
      "summary": "Giggy's hosted speech-to-text API transcribes 16 kHz mono WAV recordings in free Batch, prepaid Fast and Streaming modes, and live audio over a WebSocket, with Python and Node SDKs and a remote MCP server.",
      "url": "https://www.anchorterminal.com/tools/giggy-stt",
      "markdownUrl": "https://www.anchorterminal.com/tools/giggy-stt.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/giggy-stt.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/giggy-stt.json",
      "dns": "giggy-stt.grade.anchorterminal.com",
      "repo": "https://github.com/giggy-ai/giggy-js",
      "license": "Proprietary hosted service. The terms page draws its text by script and was not read. The Python and Node SDKs, the Pipecat adapter and the MCP repository are ISC (Copyright 2026 Giggy), the n8n node MIT",
      "transports": [
        "http",
        "sse",
        "websocket",
        "streamable-http"
      ],
      "remoteUrl": "https://api.giggy.ai/v1",
      "packages": [
        {
          "registry": "pypi",
          "name": "giggy"
        },
        {
          "registry": "npm",
          "name": "@giggy-ai/sdk"
        },
        {
          "registry": "pypi",
          "name": "pipecat-giggy"
        }
      ],
      "auth": "api-key",
      "authNotes": "Self-serve API key prefixed `giggy_sk_`, shown once when created or rotated, rejected immediately after revocation, up to ten active per Personal space or Workspace and tied for good to the space that created it. REST sends it in `xi-api-key`; the WebSocket upgrade and the MCP server take `Authorization: Bearer`. No key scopes or expiry were found, and no query-string option is documented (https://giggy.ai/docs/api-reference).",
      "pricing": "freemium",
      "pricingNotes": "Batch transcription is free, queued, for recordings of 0.5 seconds to 25 minutes. Fast costs 4,000 credits ($0.04) and Streaming 8,000 credits ($0.08) per input audio hour on Pro, Studio or Scale credits, rounded up to one credit per request. Credits come in one-time packs from $3 and expire a year after purchase. Personal accounts get free credits topped up to 10,000 a month. Whether a card is needed was not stated on any page read (https://giggy.ai/pricing).",
      "priceSummary": "Freemium",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 on the pricing page, the speech API docs, the API reference, llms.txt or llms-full.txt read on 2026-11-04. Credits are bought in prepaid packs; the payment method is not named on any page read.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-04"
      },
      "docsUrl": "https://giggy.ai/docs/speech-api",
      "llmsTxt": "https://giggy.ai/llms.txt",
      "openapi": "https://api.giggy.ai/v1/openapi.json",
      "registryName": "io.github.GRQDigitalCapital/giggy-mcp",
      "capabilities": [
        "speech.stt",
        "speech.batch",
        "speech.streaming",
        "speech.languages"
      ],
      "tags": [
        "official",
        "hosted",
        "model",
        "closed-source",
        "streaming",
        "batch",
        "async-jobs",
        "free-tier",
        "python",
        "typescript",
        "openapi",
        "llms-txt",
        "mcp",
        "websocket",
        "new"
      ],
      "lastRelease": "2026-11-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 54.5,
        "grade": "C",
        "agentReady": false,
        "rank": 867,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 15,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 68,
          "maintenance": 69,
          "payments": 30,
          "reliability": 50,
          "schema": 68,
          "security": 57,
          "transparency": 30
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "breakdown": [
          {
            "key": "reliability",
            "name": "Reliability",
            "weight": 16,
            "effectiveWeight": 20,
            "score": 50,
            "points": 10,
            "reason": "Hosted reading, as for deepgram-stt and cartesia-ink-stt. Giggy's own status page at https://giggy.ai/status lists one component, Text to speech, operational on 4 November 2026 with 98.61 per cent observed availability and 99.85 per cent completion over 14 days, refreshed every 30 minutes. It has no speech-to-text component and no incident log, so it shows nothing about this surface (5 of 20). No readable incident history, so the floor (5). Rate limits are published per credential, 60 Batch generation POSTs, 120 event-stream GETs, 600 reads and 120 MCP requests a minute, with eight live contexts per controller; Fast and Streaming POSTs have no per-credential limit and Batch queue capacity isn't given (15). 429 carries `Retry-After` with `RateLimit-*` headers, and the docs give a safe-retry rule for uploads, read the generation by UUID after a timeout or 504 and never upload the same recording again. REST transcription has no idempotency key, but the MCP `transcribe_audio` tool takes one (15). No SLA on the pricing page or in the docs; the terms could not be read (0). No beta or preview label on the API, the SDKs or the MCP server (10). 5+5+15+15+0+10 = 50.",
            "checked": "2026-11-04"
          },
          {
            "key": "performance",
            "name": "Performance",
            "weight": 10,
            "effectiveWeight": 0,
            "pending": true,
            "points": 0,
            "reason": "Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes."
          },
          {
            "key": "schema",
            "name": "Schema \u0026 documentation",
            "weight": 13,
            "effectiveWeight": 16.25,
            "score": 68,
            "points": 11.05,
            "reason": "Model reading, with the API reference. The docs and llms.txt link an OpenAPI 3.1 file at https://api.giggy.ai/v1/openapi.json, but api.giggy.ai's robots.txt could not be read, so the file wasn't fetched. We credit only what the reference pages show of it, typed `mode` values, the privacy booleans and a typed error body, and there is no AsyncAPI file for the live socket (12 of 25). llms.txt and llms-full.txt (10). The docs say when to use each mode and transport, that MCP is not a live transport, that an OpenAI base-URL swap does not work for STT, and which options have no equivalent, more than most listings say about when not to use something (17 of 20). `mode` is an enum of three values and the input format is fixed, but `language` is a free code or name with no published list, and the MCP input schemas were read only from the repository's docs, not from the server (11 of 15). Examples in the SDK READMEs, the examples repository and a Postman collection, and an error table of ten statuses with `type`, `code`, `message`, `status`, `request_id` and `param` fields, though only one code value is named (11 of 15). Paths are under `/v1` and the SDK and Pipecat repositories keep CHANGELOG.md files, dated in two of them, but there is no service changelog (7 of 15). 12+10+17+11+11+7 = 68.",
            "checked": "2026-11-04"
          },
          {
            "key": "ergonomics",
            "name": "Agent ergonomics",
            "weight": 13,
            "effectiveWeight": 16.25,
            "score": 68,
            "points": 11.05,
            "reason": "API reading, as for the other speech-to-text listings. The transcript is compact, text, detected languages, audio duration and model metadata, with no word array to trim; on an MCP reading five tools would score 25 (20 of 25). Nothing to page through and no output options, no timestamps, subtitles or speaker labels, and recorded input must be PCM16 mono 16 kHz WAV, so the caller converts everything else; a 12-hour recording goes up in one request (10 of 20). Errors are structured with a type, code, message, status, request ID and parameter, and the reference says what each status means and what to do after a 504, but no list of code values was found and the SDK error classes expose only the status and the raw body (13 of 20). Upload retries are left to the caller with clear rules, read the generation first and never re-upload after a timeout; REST has no idempotency key and `client_request_id` is documented as no guarantee, while MCP `transcribe_audio` takes an `idempotency_key`. The SDKs never retry, and closing an unfinished live socket cancels it (13 of 20). Only the audio is required, with official Python and Node SDKs, but raw REST and MCP default to paid Fast while the SDKs default to free Batch (12 of 15). 20+10+13+13+12 = 68.",
            "checked": "2026-11-04"
          },
          {
            "key": "security",
            "name": "Security \u0026 auth",
            "weight": 14,
            "effectiveWeight": 17.5,
            "score": 57,
            "points": 9.98,
            "reason": "Model reading of the checklist, with training and retention in place of the least-privilege and injection lines, as for deepgram-stt and cartesia-ink-stt. Keys prefixed `giggy_sk_` are shown once on creation or rotation, rejected immediately after revocation, limited to ten per space and tied to the space that made them, with REST budgets that Workspace members can set. No scopes or expiry were found. The key travels in a header only, with no query-string option documented (22 of 30). The workspace privacy guide states 'Giggy does not use user data to train models'. The privacy policy and terms draw by script and could not be read to confirm it (18 of 20). Requests can opt into 12-hour content retention and EEA-adequate compute, and a guide gives Batch audio a seven-day window, but no retention period for transcripts was found and results can vanish after an unstated 'retention cleanup' (9 of 15). Generation history per space and a request ID on errors; no audit log of key or admin actions was found (8 of 15). /.well-known/security.txt answered a client error, none of the six repositories has a SECURITY.md, and no disclosure policy, bug bounty or certification was found on the pages that rendered; the support page that may name a reporting route drew by script (0 of 20). 22+18+9+8+0 = 57.",
            "checked": "2026-11-04"
          },
          {
            "key": "payments",
            "name": "Payments \u0026 pricing",
            "weight": 10,
            "effectiveWeight": 12.5,
            "score": 30,
            "points": 3.75,
            "reason": "No x402, MPP or L402 (0). Per-hour prices for Batch, Fast and Streaming and every credit pack published without a login (20). Free Batch transcription and Personal free credits topped up to 10,000 a month, but no page read says whether a card is needed, so half, as other listings read an unstated card requirement (10 of 20). A person signs up in a browser and creates the key there; no programmatic key route was found (0). 0+20+10+0 = 30.",
            "checked": "2026-11-04"
          },
          {
            "key": "tasks",
            "name": "Task success",
            "weight": 10,
            "effectiveWeight": 0,
            "pending": true,
            "points": 0,
            "reason": "Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored."
          },
          {
            "key": "maintenance",
            "name": "Maintenance \u0026 community",
            "weight": 7,
            "effectiveWeight": 8.75,
            "score": 69,
            "points": 6.04,
            "reason": "Read as a model, on the lines deepgram-stt and cartesia-ink-stt use (recency 30, dated releases 10, deprecation notice 10, support 15, issues 10, SDKs 15, health 10). The Python and Node SDKs released 0.2.1 and the Pipecat adapter 0.3.3 on 1 November 2026, and the examples and MCP repositories changed on 3 November (30). Since 7 October the Node SDK has four tagged releases, the Python SDK six and the Pipecat adapter six, the STT ones from 12 October (10). No deprecation policy or dated notice. The legacy `https://giggy.ai/v1` origin and older SDK transports are kept 'for existing integrations' with no end date (2 of 10). No service changelog; the support and contact pages drew by script, and GitHub issues is the support URL in the plugin manifest (5 of 15). GitHub issues and reply times could not be read, since the GitHub API was not available to this session (0 of 10). Official SDKs current, `giggy` and `@giggy-ai/sdk` at 0.2.1 on PyPI and npm (15). CI workflows in five repositories and publish workflows, the n8n node through npm OIDC with provenance, and two runtime dependencies in each SDK; run results not seen (7 of 10). 30+10+2+5+0+15+7 = 69.",
            "checked": "2026-11-04"
          },
          {
            "key": "transparency",
            "name": "Transparency \u0026 trust",
            "weight": 7,
            "effectiveWeight": 8.75,
            "score": 30,
            "points": 2.63,
            "note": "editorial 23, provenance 36",
            "reason": "Closed hosted service. The terms exist at /terms but draw by script and could not be read, so their clarity is unknown; the SDK, Pipecat and MCP repositories are ISC and the n8n node MIT (5 of 30). What could be read agrees with itself, no training on user data, an optional 12-hour retention flag, a seven-day window for Batch audio, and the EEA compute flag. The privacy policy, any DPA and a retention period for transcripts were not found or not readable (12 of 30). No deprecation policy or dated notices, only a statement that the legacy origin remains supported (3 of 20). No subprocessors or data locations are named; the EEA-adequate compute option implies processing outside the EEA by default without saying where (3 of 20). 5+12+3+3 = 23.",
            "checked": "2026-11-04"
          }
        ],
        "assessment": {
          "date": "2026-11-04",
          "basis": "public evidence",
          "confidence": "low",
          "notes": {
            "ergonomics": "API reading, as for the other speech-to-text listings. The transcript is compact, text, detected languages, audio duration and model metadata, with no word array to trim; on an MCP reading five tools would score 25 (20 of 25). Nothing to page through and no output options, no timestamps, subtitles or speaker labels, and recorded input must be PCM16 mono 16 kHz WAV, so the caller converts everything else; a 12-hour recording goes up in one request (10 of 20). Errors are structured with a type, code, message, status, request ID and parameter, and the reference says what each status means and what to do after a 504, but no list of code values was found and the SDK error classes expose only the status and the raw body (13 of 20). Upload retries are left to the caller with clear rules, read the generation first and never re-upload after a timeout; REST has no idempotency key and `client_request_id` is documented as no guarantee, while MCP `transcribe_audio` takes an `idempotency_key`. The SDKs never retry, and closing an unfinished live socket cancels it (13 of 20). Only the audio is required, with official Python and Node SDKs, but raw REST and MCP default to paid Fast while the SDKs default to free Batch (12 of 15). 20+10+13+13+12 = 68.",
            "maintenance": "Read as a model, on the lines deepgram-stt and cartesia-ink-stt use (recency 30, dated releases 10, deprecation notice 10, support 15, issues 10, SDKs 15, health 10). The Python and Node SDKs released 0.2.1 and the Pipecat adapter 0.3.3 on 1 November 2026, and the examples and MCP repositories changed on 3 November (30). Since 7 October the Node SDK has four tagged releases, the Python SDK six and the Pipecat adapter six, the STT ones from 12 October (10). No deprecation policy or dated notice. The legacy `https://giggy.ai/v1` origin and older SDK transports are kept 'for existing integrations' with no end date (2 of 10). No service changelog; the support and contact pages drew by script, and GitHub issues is the support URL in the plugin manifest (5 of 15). GitHub issues and reply times could not be read, since the GitHub API was not available to this session (0 of 10). Official SDKs current, `giggy` and `@giggy-ai/sdk` at 0.2.1 on PyPI and npm (15). CI workflows in five repositories and publish workflows, the n8n node through npm OIDC with provenance, and two runtime dependencies in each SDK; run results not seen (7 of 10). 30+10+2+5+0+15+7 = 69.",
            "payments": "No x402, MPP or L402 (0). Per-hour prices for Batch, Fast and Streaming and every credit pack published without a login (20). Free Batch transcription and Personal free credits topped up to 10,000 a month, but no page read says whether a card is needed, so half, as other listings read an unstated card requirement (10 of 20). A person signs up in a browser and creates the key there; no programmatic key route was found (0). 0+20+10+0 = 30.",
            "reliability": "Hosted reading, as for deepgram-stt and cartesia-ink-stt. Giggy's own status page at https://giggy.ai/status lists one component, Text to speech, operational on 4 November 2026 with 98.61 per cent observed availability and 99.85 per cent completion over 14 days, refreshed every 30 minutes. It has no speech-to-text component and no incident log, so it shows nothing about this surface (5 of 20). No readable incident history, so the floor (5). Rate limits are published per credential, 60 Batch generation POSTs, 120 event-stream GETs, 600 reads and 120 MCP requests a minute, with eight live contexts per controller; Fast and Streaming POSTs have no per-credential limit and Batch queue capacity isn't given (15). 429 carries `Retry-After` with `RateLimit-*` headers, and the docs give a safe-retry rule for uploads, read the generation by UUID after a timeout or 504 and never upload the same recording again. REST transcription has no idempotency key, but the MCP `transcribe_audio` tool takes one (15). No SLA on the pricing page or in the docs; the terms could not be read (0). No beta or preview label on the API, the SDKs or the MCP server (10). 5+5+15+15+0+10 = 50.",
            "schema": "Model reading, with the API reference. The docs and llms.txt link an OpenAPI 3.1 file at https://api.giggy.ai/v1/openapi.json, but api.giggy.ai's robots.txt could not be read, so the file wasn't fetched. We credit only what the reference pages show of it, typed `mode` values, the privacy booleans and a typed error body, and there is no AsyncAPI file for the live socket (12 of 25). llms.txt and llms-full.txt (10). The docs say when to use each mode and transport, that MCP is not a live transport, that an OpenAI base-URL swap does not work for STT, and which options have no equivalent, more than most listings say about when not to use something (17 of 20). `mode` is an enum of three values and the input format is fixed, but `language` is a free code or name with no published list, and the MCP input schemas were read only from the repository's docs, not from the server (11 of 15). Examples in the SDK READMEs, the examples repository and a Postman collection, and an error table of ten statuses with `type`, `code`, `message`, `status`, `request_id` and `param` fields, though only one code value is named (11 of 15). Paths are under `/v1` and the SDK and Pipecat repositories keep CHANGELOG.md files, dated in two of them, but there is no service changelog (7 of 15). 12+10+17+11+11+7 = 68.",
            "security": "Model reading of the checklist, with training and retention in place of the least-privilege and injection lines, as for deepgram-stt and cartesia-ink-stt. Keys prefixed `giggy_sk_` are shown once on creation or rotation, rejected immediately after revocation, limited to ten per space and tied to the space that made them, with REST budgets that Workspace members can set. No scopes or expiry were found. The key travels in a header only, with no query-string option documented (22 of 30). The workspace privacy guide states 'Giggy does not use user data to train models'. The privacy policy and terms draw by script and could not be read to confirm it (18 of 20). Requests can opt into 12-hour content retention and EEA-adequate compute, and a guide gives Batch audio a seven-day window, but no retention period for transcripts was found and results can vanish after an unstated 'retention cleanup' (9 of 15). Generation history per space and a request ID on errors; no audit log of key or admin actions was found (8 of 15). /.well-known/security.txt answered a client error, none of the six repositories has a SECURITY.md, and no disclosure policy, bug bounty or certification was found on the pages that rendered; the support page that may name a reporting route drew by script (0 of 20). 22+18+9+8+0 = 57.",
            "transparency": "Closed hosted service. The terms exist at /terms but draw by script and could not be read, so their clarity is unknown; the SDK, Pipecat and MCP repositories are ISC and the n8n node MIT (5 of 30). What could be read agrees with itself, no training on user data, an optional 12-hour retention flag, a seven-day window for Batch audio, and the EEA compute flag. The privacy policy, any DPA and a retention period for transcripts were not found or not readable (12 of 30). No deprecation policy or dated notices, only a statement that the legacy origin remains supported (3 of 20). No subprocessors or data locations are named; the EEA-adequate compute option implies processing outside the EEA by default without saying where (3 of 20). 5+12+3+3 = 23."
          },
          "sources": [
            {
              "what": "speech-to-text product page (modes, limits, languages, prices)",
              "url": "https://giggy.ai/speech-to-text",
              "seen": "2026-11-04"
            },
            {
              "what": "speech API docs (endpoints, live protocol, keys, privacy flags, SDKs, MCP, migration notes)",
              "url": "https://giggy.ai/docs/speech-api",
              "seen": "2026-11-04"
            },
            {
              "what": "API reference (errors, rate limits, idempotency, retry and reconcile rules)",
              "url": "https://giggy.ai/docs/api-reference",
              "seen": "2026-11-04"
            },
            {
              "what": "llms.txt (endpoints, live contexts, package pins, partner status)",
              "url": "https://giggy.ai/llms.txt",
              "seen": "2026-11-04"
            },
            {
              "what": "llms-full.txt (transcript fields, upload size, client_request_id, no diarisation)",
              "url": "https://giggy.ai/llms-full.txt",
              "seen": "2026-11-04"
            },
            {
              "what": "pricing (STT and TTS prices, credit packs, free credits, expiry, grants)",
              "url": "https://giggy.ai/pricing",
              "seen": "2026-11-04"
            },
            {
              "what": "generation modes and credits pages (limits, rounding, free credits)",
              "url": "https://giggy.ai/docs/generation-modes",
              "seen": "2026-11-04"
            },
            {
              "what": "credits and billing docs",
              "url": "https://giggy.ai/docs/credits-billing",
              "seen": "2026-11-04"
            },
            {
              "what": "status page (one Text to speech component, 14-day figures)",
              "url": "https://giggy.ai/status",
              "seen": "2026-11-04"
            },
            {
              "what": "about page ('Made in California', founding team, own speech model)",
              "url": "https://giggy.ai/about",
              "seen": "2026-11-04"
            },
            {
              "what": "workspace privacy guide (no training on user data)",
              "url": "https://giggy.ai/docs/guides/workspace-privacy-and-leaving",
              "seen": "2026-11-04"
            },
            {
              "what": "generation history guide (seven-day Batch audio window, 12-hour policy)",
              "url": "https://giggy.ai/docs/guides/how-generation-history-works",
              "seen": "2026-11-04"
            },
            {
              "what": "workspace roles guide (who creates and manages keys and budgets)",
              "url": "https://giggy.ai/docs/guides/workspace-roles-and-permissions",
              "seen": "2026-11-04"
            },
            {
              "what": "workspace credits and keys guide (key ownership, budgets)",
              "url": "https://giggy.ai/docs/guides/workspace-credits-api-keys-and-billing",
              "seen": "2026-11-04"
            },
            {
              "what": "terms, privacy, acceptable use, contact, support and privacy-rights pages (titles only, drawn by script)",
              "url": "https://giggy.ai/terms",
              "seen": "2026-11-04"
            },
            {
              "what": "robots.txt and sitemap",
              "url": "https://giggy.ai/sitemap.xml",
              "seen": "2026-11-04"
            },
            {
              "what": "Node SDK source, CHANGELOG and tags (v0.1.0 7 October to v0.2.1 1 November 2026)",
              "url": "https://github.com/giggy-ai/giggy-js",
              "seen": "2026-11-04"
            },
            {
              "what": "Python SDK source, CHANGELOG and tags (py-v0.1.0 13 October to py-v0.2.1 1 November 2026)",
              "url": "https://github.com/giggy-ai/giggy-python",
              "seen": "2026-11-04"
            },
            {
              "what": "Pipecat adapter CHANGELOG (STT added in 0.2.0 on 12 October 2026)",
              "url": "https://github.com/giggy-ai/pipecat-giggy",
              "seen": "2026-11-04"
            },
            {
              "what": "MCP repository (server.json, tool docs, directory-submission status)",
              "url": "https://github.com/giggy-ai/giggy-mcp",
              "seen": "2026-11-04"
            },
            {
              "what": "examples repository (integration status table, LiveKit pull request)",
              "url": "https://github.com/giggy-ai/giggy-examples",
              "seen": "2026-11-04"
            },
            {
              "what": "official MCP registry search (io.github.GRQDigitalCapital/giggy-mcp 1.0.0 to 1.0.2)",
              "url": "https://registry.modelcontextprotocol.io/v0/servers?search=giggy",
              "seen": "2026-11-04"
            },
            {
              "what": "npm registry document for @giggy-ai/sdk (created 7 October 2026, maintainer giggy)",
              "url": "https://registry.npmjs.org/@giggy-ai%2Fsdk",
              "seen": "2026-11-04"
            },
            {
              "what": "PyPI release feed for giggy",
              "url": "https://pypi.org/rss/project/giggy/releases.xml",
              "seen": "2026-11-04"
            },
            {
              "what": "PyPI release feed for pipecat-giggy",
              "url": "https://pypi.org/rss/project/pipecat-giggy/releases.xml",
              "seen": "2026-11-04"
            }
          ],
          "openQuestions": [
            "Kind is `model`, as for deepgram-stt, assemblyai-stt, soniox-stt and cartesia-ink-stt. The about page says Giggy 'built a new speech model' and the product is a hosted API in front of it; the MCP server is one of four surfaces and covers only recorded audio.",
            "unchecked: the legal entity. The terms, privacy policy, acceptable use, contact, support and privacy-rights pages returned only titles and metadata because their text is drawn by script, and /terms.md answered a client error. Every page that rendered names only Giggy. Recorded as unchecked, not absent.",
            "unchecked: api.giggy.ai, whose robots.txt fetch needed an approval that wasn't given, so the OpenAPI file at https://api.giggy.ai/v1/openapi.json was not read and schema is scored from the reference pages.",
            "unchecked: the hosted MCP server's tools/list and input schemas. One plain GET to https://giggy.ai/mcp answered a client error (status not shown to us), consistent with the README's note that the endpoint accepts POST; no session was opened. The five tool names come from the repository, which records an authenticated tools/list of 13 October 2026.",
            "unchecked: whether sign-up or free Batch needs a card. Not stated on the pricing, generation-modes, credits-billing or getting-started pages, and the accounts page drew by script. Scored 10 of 20, as other listings read an unstated card requirement.",
            "unchecked: RDAP for giggy.ai and pypi.org's robots.txt through the web reader (each needed an approval). PyPI's robots.txt was read from the shell, and only the release RSS feeds were read there.",
            "unchecked: GitHub stars, open issues, reply times and workflow results for the six repositories; the GitHub API was not available to this session and only shallow clones were read.",
            "The MCP registry name `io.github.GRQDigitalCapital/giggy-mcp` is a namespace under a GitHub account the site never names. The repository says the listing predates a transfer to giggy-ai and that the name can't change without a registry migration. Recorded, not deducted.",
            "firstReleased is 2026-10-12, when `pipecat-giggy` 0.2.0 added `GiggySTTService` on 'the existing paid live PCM transcription API'. The npm package's 7 October 2026 release (0.1.0) was text-to-speech only per its README, and the Python SDK with transcription first appears on 13 October. lastRelease is 2026-11-01 (SDKs 0.2.1, Pipecat adapter 0.3.3).",
            "The status page covers text-to-speech only. Whether speech-to-text runs on the same infrastructure isn't stated.",
            "The listing check's Verli benchmark page could not be located again in our searches and was not re-read; it is cited in `forReviewers.fit` as reported by that check and scores nothing.",
            "Giggy doesn't do LocalGhost's or letme's job. It transcribes audio for an agent; it neither hides an agent's identity nor chooses tools for a task."
          ]
        },
        "negative": 0,
        "verdict": "Fast transcription costs $0.04 an input audio hour and Batch is free up to 25 minutes, with published rate limits, Retry-After and a rule to check a generation before resubmitting. Input must be 16 kHz mono WAV, there are no timestamps or speaker labels, the status page covers text-to-speech only, and no company is named on pages we could read.",
        "bestFor": "Agents and voice pipelines that need plain transcripts of recorded or live speech at a few cents an hour, or free for clips under 25 minutes, and can convert audio to 16 kHz mono WAV first.",
        "strengths": [
          "Fast is $0.04 and Streaming $0.08 per input audio hour on Pro credits, and Batch is free for recordings of 0.5 seconds to 25 minutes",
          "Per-credential rate limits are published with numbers, 429 carries `Retry-After`, and `RateLimit-*` headers report what is left",
          "The docs say to read a generation by UUID after a timeout or 504 instead of uploading again, and the SDKs never retry paid requests",
          "llms.txt, llms-full.txt and SDK READMEs state what the API does not do, including no diarisation, timestamps or OpenAI-compatible STT",
          "Official Python and Node SDKs at 0.2.1, a Pipecat adapter with live STT and a remote MCP server, all released within the last four weeks"
        ],
        "weaknesses": [
          "Recorded input must be PCM16 mono 16 kHz WAV, so MP3, M4A, stereo or other sample rates need converting before upload",
          "No word timestamps, speaker labels, confidence scores or redaction, per the speech API docs",
          "The status page has one component, Text to speech, and no incident history, so speech-to-text availability isn't shown",
          "REST transcription has no idempotency key, and `client_request_id` is documented as not making a retried upload safe",
          "The terms, privacy policy, support and contact pages draw by script, and no company, address or security contact was found on any page read"
        ],
        "agentNotes": [
          "Pass `mode=batch` explicitly for free transcription. Raw REST and MCP default to paid Fast when `mode` is omitted.",
          "Convert audio to PCM16 mono 16 kHz WAV first and send it as the raw body with `Content-Type: audio/wav`.",
          "Keep the `generation_uuid` from the 202 and poll `GET /v1/generations/{uuid}`. Never re-upload after a timeout or 504 before reading that generation.",
          "Fetch the transcript from the signed `generation.result.url` after completion, without the API key. It can disappear after retention cleanup.",
          "On the live WebSocket, replace earlier text with each cumulative `transcription` event and publish final text only after `input_complete`."
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 54.5
          }
        ],
        "editorialScores": {
          "ergonomics": 68,
          "maintenance": 69,
          "payments": 30,
          "reliability": 50,
          "schema": 68,
          "security": 57,
          "transparency": 23
        },
        "provenanceScore": 36,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-04",
            "maintenance": "2026-11-04",
            "payments": "2026-11-04",
            "reliability": "2026-11-04",
            "schema": "2026-11-04",
            "security": "2026-11-04",
            "transparency": "2026-11-04"
          },
          "last": "2026-11-04",
          "oldest": "2026-11-04",
          "stale": false,
          "staleAfterDays": 90
        },
        "scoreHistory": [
          {
            "date": "2026-11-04",
            "grade": "C",
            "kind": "listed",
            "method": "0.7",
            "score": 54.5
          }
        ]
      },
      "connect": {
        "install": "python -m pip install giggy==0.2.1   # or: npm install @giggy-ai/sdk",
        "http": "curl -X POST \"https://api.giggy.ai/v1/audio/transcriptions?mode=batch\u0026language=en\" \\\n  -H \"xi-api-key: $GIGGY_API_KEY\" -H \"Content-Type: audio/wav\" \\\n  --data-binary @recording.wav",
        "config": {
          "mcpServers": {
            "giggy-speech": {
              "headers": {
                "Authorization": "Bearer ${GIGGY_API_KEY}"
              },
              "type": "http",
              "url": "https://giggy.ai/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/speech.stt",
        "tool": "https://letme.dev/giggy-stt"
      },
      "notable": [
        "`POST /v1/audio/transcriptions` takes a raw PCM16 mono 16 kHz WAV body with `mode` (`batch`, `fast` or `streaming`) and an optional `language`. Batch and Fast answer HTTP 202 with a generation UUID to poll at `GET /v1/generations/{uuid}`; Streaming answers with cumulative transcript server-sent events (https://giggy.ai/docs/speech-api)",
        "Live transcription runs over `wss://api.giggy.ai/v1/audio/transcriptions` with a `start` message, binary PCM, `stop` and an `input_complete` event, for 0.5 seconds to 12 hours. Admission reserves 96,000 credits and settles on accepted audio, and closing unfinished input cancels the work (https://giggy.ai/docs/speech-api)",
        "Raw REST and MCP default to paid Fast when `mode` is omitted, while both SDKs default to free Batch (https://giggy.ai/docs/speech-api)",
        "The docs say speaker labels, word timestamps, confidence, chapters, sentiment and redaction have no equivalent in the API. A transcript holds text, detected languages, audio duration and model metadata (https://giggy.ai/llms-full.txt)",
        "Rate limits per credential are 60 Batch generation POSTs, 120 event-stream GETs, 600 reads and 120 MCP requests a minute, with `RateLimit-*` headers and `Retry-After` on 429. Fast and Streaming POSTs have no per-credential limit (https://giggy.ai/docs/api-reference)",
        "After a timeout or 504 the docs say to read the generation by UUID before doing anything else, and that 'A timeout is not permission to upload the same recording again'. REST takes an optional `client_request_id`, which the SDK docs say is not an idempotency guarantee; the MCP `transcribe_audio` tool takes an `idempotency_key` (https://giggy.ai/docs/speech-api, https://github.com/giggy-ai/giggy-mcp)",
        "The status page at https://giggy.ai/status lists one component, Text to speech, with observed availability of 98.61 per cent and completion of 99.85 per cent over 14 days on 4 November 2026. It has no speech-to-text component and no incident history",
        "A workspace privacy guide states 'Giggy does not use user data to train models'. Requests can set `content_retention_12h` and `compute_eea_adequate_only`; the privacy policy and terms draw their text by script and were not read (https://giggy.ai/docs/guides/workspace-privacy-and-leaving)",
        "The remote MCP server at https://giggy.ai/mcp has five tools, two for speech-to-text (`transcribe_audio`, `get_speech_generation`). It is registered as `io.github.GRQDigitalCapital/giggy-mcp` 1.0.2, a namespace under a GitHub account the site never names, and the repository moved to giggy-ai (https://github.com/giggy-ai/giggy-mcp/blob/main/docs/directory-submission.md)",
        "The about page says the company is 'Made in California', that its founding team 'previously led video products at Meta and YouTube' and that it 'built a new speech model'. No company, person or address is named on any page we could read (https://giggy.ai/about)",
        "The same company sells text-to-speech, voice design and voice cloning through the same keys, credits and status page. Those are outside this listing"
      ],
      "area": "voice",
      "details": [
        {
          "label": "Modes",
          "value": "Batch (free, queued, 0.5 seconds to 25 minutes), Fast (prepaid, 202 and poll, up to 12 hours), Streaming (prepaid, cumulative SSE for an uploaded recording, up to 12 hours) and live WebSocket (prepaid, up to 12 hours)"
        },
        {
          "label": "Languages",
          "value": "25+ with automatic detection, among them English, Spanish, French, German, Mandarin, Japanese, Korean, Arabic, Hindi and Portuguese. No full list of codes was found"
        },
        {
          "label": "Streaming latency",
          "value": "Not published. Not measured by us"
        },
        {
          "label": "Diarisation",
          "value": "None. The docs list speaker labels, word timestamps, confidence, chapters, sentiment and redaction as unsupported"
        },
        {
          "label": "Input",
          "value": "PCM16 mono 16 kHz WAV, as a raw body or a JSON data URL. Live input is headerless PCM16 at 16 kHz, or 8 kHz LINEAR16 for Jambonz, which Giggy converts"
        },
        {
          "label": "Output",
          "value": "Transcript JSON with text, detected languages, `audio_duration_ms` and model metadata, read from a signed URL after completion. Cumulative `transcription` events on the live socket"
        },
        {
          "label": "Max file",
          "value": "25 minutes on Batch. 12 hours on Fast and Streaming, with binary uploads up to 1,382,400,000 audio bytes plus 1 MiB of headers"
        },
        {
          "label": "Free tier",
          "value": "Batch is free with request and queue limits. Personal accounts get free credits topped up to 10,000 a month, about 2.5 hours of Fast. Workspaces get none. Card requirement not stated"
        },
        {
          "label": "Rate limits",
          "value": "Per credential per minute, 60 Batch POSTs, 120 event-stream GETs, 600 reads, 120 MCP requests. Eight live contexts per controller. Queue capacity not published"
        },
        {
          "label": "Trains on API data",
          "value": "No, per the workspace privacy guide. The privacy policy could not be read"
        },
        {
          "label": "Data retention",
          "value": "Optional 12-hour content retention per request. A guide gives Batch audio a seven-day window. No transcript retention period was found"
        },
        {
          "label": "Regions",
          "value": "Optional `compute_eea_adequate_only` flag per request. No data locations or providers named"
        },
        {
          "label": "MCP",
          "value": "Remote Streamable HTTP at `https://giggy.ai/mcp` with a Bearer key. Five tools, `transcribe_audio` (Base64 WAV data URL) and `get_speech_generation` for speech-to-text. Not a live transport"
        },
        {
          "label": "Integrations",
          "value": "`pipecat-giggy` 0.3.3 with live STT for 0.5 to 30 second utterances, a Jambonz custom STT socket, and an open LiveKit pull request that is not a released plugin"
        }
      ],
      "unitPrices": [
        {
          "item": "Fast, Pro, Studio or Scale credits",
          "unit": "audio-minute",
          "usd": 0.000667,
          "note": "published as $0.04 per input audio hour, rounded up to one credit per request"
        },
        {
          "item": "Streaming, Pro, Studio or Scale credits",
          "unit": "audio-minute",
          "usd": 0.001333,
          "note": "published as $0.08 per input audio hour"
        },
        {
          "item": "Fast, Starter pack",
          "unit": "audio-minute",
          "usd": 0.000765,
          "note": "$3 for 261,300 credits, $0.0459 an hour"
        },
        {
          "item": "Streaming, Starter pack",
          "unit": "audio-minute",
          "usd": 0.00153,
          "note": "$0.0918 an hour"
        },
        {
          "item": "Batch",
          "unit": "audio-minute",
          "usd": 0,
          "note": "free, queued, 0.5 seconds to 25 minutes a recording"
        }
      ],
      "taskCosts": {
        "units": [
          {
            "task": "transcribe-hour",
            "name": "Transcribe a one-hour meeting",
            "unit": "audio-minute",
            "quantity": 60,
            "lowUsd": 0.04,
            "highUsd": 0.09,
            "lowItem": "Fast, Pro, Studio or Scale credits",
            "highItem": "Streaming, Starter pack"
          }
        ],
        "note": "The quantity times this listing's own unit price, its cheapest item to its dearest. Plans, minimums and free allowances aren't counted."
      },
      "provenance": {
        "legalEntity": "",
        "domain": "giggy.ai",
        "domainRegistered": "",
        "endpointOnVendorDomain": true,
        "terms": "https://giggy.ai/terms",
        "privacy": "https://giggy.ai/privacy",
        "statusPage": "https://giggy.ai/status",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-11-04",
        "notes": [
          "unchecked: the legal entity. /terms, /privacy, /acceptable-use, /contact, /docs/support and /docs/privacy-rights returned only their titles and metadata, because their text is drawn by script, and /terms.md answered a client error. The about, pricing, grants and docs pages that did render name only Giggy, with 'Made in California' on the about page. The repositories' licences say 'Copyright 2026 Giggy'.",
          "The status page tracks one component, Text to speech, with 14-day availability and completion figures refreshed every 30 minutes and no incident history. It has no speech-to-text component.",
          "No service changelog was found. The SDK and Pipecat repositories carry CHANGELOG.md files, dated in the Python SDK and the Pipecat adapter.",
          "https://giggy.ai/.well-known/security.txt answered a client error. None of the six public repositories has a SECURITY.md.",
          "robots.txt on giggy.ai allows / and disallows /api/, /ops/, /app/ and /blog/*.md for `*` and for the named AI agents, with no Content-Signal line. api.giggy.ai's robots.txt could not be read (the fetch needed an approval that wasn't given), so nothing on that host was fetched, the OpenAPI file included.",
          "unchecked: RDAP for giggy.ai (refused for want of an approval on 4 November 2026)."
        ],
        "score": 36,
        "checks": [
          {
            "check": "Legal entity named",
            "value": "not found",
            "points": 0,
            "max": 20,
            "state": "no"
          },
          {
            "check": "Domain age",
            "value": "giggy.ai, no registry record we could read",
            "points": 0,
            "max": 15,
            "state": "no"
          },
          {
            "check": "Endpoint on the vendor's domain",
            "value": "api.giggy.ai",
            "points": 15,
            "max": 15,
            "state": "ok"
          },
          {
            "check": "Terms of service",
            "value": "published, not read by us yet",
            "points": 4,
            "max": 10,
            "state": "part"
          },
          {
            "check": "Privacy policy",
            "value": "published, not read by us yet",
            "points": 4,
            "max": 10,
            "state": "part"
          },
          {
            "check": "Status page",
            "value": "giggy.ai/status",
            "points": 10,
            "max": 10,
            "state": "ok"
          },
          {
            "check": "Changelog",
            "value": "not found",
            "points": 0,
            "max": 10,
            "state": "no"
          },
          {
            "check": "security.txt",
            "value": "not found",
            "points": 0,
            "max": 10,
            "state": "no"
          },
          {
            "check": "People named",
            "value": "not researched yet",
            "points": 0,
            "max": 0,
            "state": "na"
          },
          {
            "check": "Support route",
            "value": "help pages, a community",
            "points": 5,
            "max": 5,
            "state": "ok"
          }
        ]
      },
      "humans": {
        "slug": "giggy-stt",
        "checked": "2026-11-04",
        "company": "Giggy",
        "peopleNote": "No person is named with a role on any first-hand page we could read. The about page says the founding team 'previously led video products at Meta and YouTube' and that the company is 'Made in California', but names nobody. The home, speech-to-text, pricing, grants, status, docs and guide pages name only Giggy. The terms, privacy policy, acceptable use, contact, support and privacy-rights pages, and the blog index (described as 'founder notes'), drew their text by script and returned only titles, so whoever they name is unchecked. A package author on PyPI and commit authors in the GitHub repositories are not a role and were not used, nor was the submitter's name; the MCP registry namespace belongs to a GitHub account, GRQDigitalCapital, that the site never names. Ownership is unknown because no legal entity could be read. Investors were looked for on the about, pricing and grants pages, the sitemap (no press or funding page) and the blog index (drawn by script), and in four web searches for Giggy with funding, seed, founders, Meta and YouTube, terms and the giggy.ai domain, which returned only directory listings, Pipecat's Giggy TTS page and unrelated companies such as Gigged.AI and Giga; no round, backer or accelerator page was found. RDAP for giggy.ai was not read.",
        "companySocial": {
          "github": "https://github.com/giggy-ai"
        },
        "support": {
          "urls": [
            "https://giggy.ai/docs/support",
            "https://giggy.ai/docs/speech-api",
            "https://giggy.ai/status"
          ],
          "community": [
            {
              "label": "GitHub issues (giggy-mcp, the support URL in the plugin manifest)",
              "url": "https://github.com/giggy-ai/giggy-mcp/issues",
              "kind": "github"
            }
          ],
          "contactUrls": [
            "https://giggy.ai/contact"
          ]
        },
        "sources": [
          "https://giggy.ai/about",
          "https://giggy.ai/pricing",
          "https://giggy.ai/giggy-grants",
          "https://giggy.ai/sitemap.xml",
          "https://giggy.ai/blog",
          "https://giggy.ai/contact",
          "https://giggy.ai/docs/support",
          "https://giggy.ai/terms",
          "https://giggy.ai/privacy",
          "https://github.com/giggy-ai/giggy-mcp",
          "https://github.com/giggy-ai/giggy-js",
          "https://github.com/giggy-ai/giggy-python",
          "https://registry.modelcontextprotocol.io/v0/servers?search=giggy"
        ],
        "ownership": {
          "status": "unknown",
          "checked": "2026-11-04",
          "sources": [
            "https://giggy.ai/about",
            "https://giggy.ai/terms",
            "https://giggy.ai/privacy"
          ]
        }
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/giggy-stt.json",
      "live": {
        "slug": "giggy-stt",
        "probe": {
          "target": "https://api.giggy.ai/v1",
          "method": "get",
          "lastAt": "2026-11-04T20:05:02.939592453Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 270,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 301,
          "p95ms24h": 654,
          "samples24h": 48,
          "samples30d": 48,
          "days": [
            {
              "date": "2026-11-04",
              "probes": 48,
              "ok": 48
            }
          ]
        },
        "vendorStatus": {
          "page": "https://giggy.ai/status",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-04T15:31:56.257084594Z"
        },
        "versions": [
          {
            "registry": "mcp-registry",
            "name": "io.github.GRQDigitalCapital/giggy-mcp",
            "version": "1.0.2",
            "seenAt": "2026-11-04T17:11:44.552009456Z"
          }
        ],
        "securityTxt": {
          "url": "https://giggy.ai/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-04T15:54:29.107165985Z"
        },
        "updatedAt": "2026-11-04T20:05:02.939592453Z"
      }
    },
    "verify": {
      "accepts": "a page on giggy.ai or one of its subdomains, or the README at the root of github.com/giggy-ai/giggy-js",
      "badgeUrl": "https://www.anchorterminal.com/badges/giggy-stt.svg",
      "body": {
        "slug": "giggy-stt",
        "url": "the page with the badge or the link"
      },
      "docs": "https://www.anchorterminal.com/builders/#verify",
      "effect": "none, it never changes a grade, rank or review",
      "endpoint": "https://www.anchorterminal.com/api/v1/verify",
      "listingUrl": "https://www.anchorterminal.com/tools/giggy-stt",
      "mcpTool": "verify_listing",
      "recheck": "weekly; two failed checks in a row and it lapses, a later pass restores it",
      "snippets": {
        "html": "\u003ca href=\"https://www.anchorterminal.com/tools/giggy-stt\"\u003e\u003cimg src=\"https://www.anchorterminal.com/badges/giggy-stt.svg\" alt=\"Giggy Speech to Text on Anchor Terminal\" height=\"20\"\u003e\u003c/a\u003e",
        "markdown": "[![Giggy Speech to Text on Anchor Terminal](https://www.anchorterminal.com/badges/giggy-stt.svg)](https://www.anchorterminal.com/tools/giggy-stt)",
        "link": "\u003ca href=\"https://www.anchorterminal.com/tools/giggy-stt\"\u003eGiggy Speech to Text on Anchor Terminal\u003c/a\u003e"
      }
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/tools/giggy-stt",
    "json": "https://www.anchorterminal.com/tools/giggy-stt.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/tools/giggy-stt.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "pricing": "https://www.anchorterminal.com/tools/giggy-stt#pricing",
    "reviews": "https://www.anchorterminal.com/tools/giggy-stt#reviews",
    "slim": "https://www.anchorterminal.com/tools/giggy-stt.min.md"
  },
  "markdown": "## Overview\n\n**Grade C · 54.5/100 · rank #867 of 1349 · #15 in Speech-to-text · not agent-ready · confidence low**\n\n\n## Assessment\n\nFast transcription costs $0.04 an input audio hour and Batch is free up to 25 minutes, with published rate limits, Retry-After and a rule to check a generation before resubmitting. Input must be 16 kHz mono WAV, there are no timestamps or speaker labels, the status page covers text-to-speech only, and no company is named on pages we could read.\n\n## Facts\n\n| Field | Value |\n| --- | --- |\n| Vendor | Giggy (https://giggy.ai) |\n| Kind | Model API |\n| Category | Speech-to-text (https://www.anchorterminal.com/categories/speech-to-text) |\n| Transport | HTTP, SSE (legacy), websocket, Streamable HTTP |\n| Endpoint | `https://api.giggy.ai/v1` |\n| Auth | API key · Self-serve API key prefixed `giggy_sk_`, shown once when created or rotated, rejected immediately after revocation, up to ten active per Personal space or Workspace and tied for good to the space that created it. REST sends it in `xi-api-key`; the WebSocket upgrade and the MCP server take `Authorization: Bearer`. No key scopes or expiry were found, and no query-string option is documented (https://giggy.ai/docs/api-reference). |\n| Pricing | Freemium (Freemium) · Batch transcription is free, queued, for recordings of 0.5 seconds to 25 minutes. Fast costs 4,000 credits ($0.04) and Streaming 8,000 credits ($0.08) per input audio hour on Pro, Studio or Scale credits, rounded up to one credit per request. Credits come in one-time packs from $3 and expire a year after purchase. Personal accounts get free credits topped up to 10,000 a month. Whether a card is needed was not stated on any page read (https://giggy.ai/pricing). |\n| x402 | No · No x402, MPP or L402 on the pricing page, the speech API docs, the API reference, llms.txt or llms-full.txt read on 2026-11-04. Credits are bought in prepaid packs; the payment method is not named on any page read. |\n| Licence | Proprietary hosted service. The terms page draws its text by script and was not read. The Python and Node SDKs, the Pipecat adapter and the MCP repository are ISC (Copyright 2026 Giggy), the n8n node MIT |\n| Packages | pypi: `giggy`; npm: `@giggy-ai/sdk`; pypi: `pipecat-giggy` |\n| MCP registry name | `io.github.GRQDigitalCapital/giggy-mcp` |\n| Source | https://github.com/giggy-ai/giggy-js |\n| Docs | https://giggy.ai/docs/speech-api |\n| llms.txt | https://giggy.ai/llms.txt |\n| Last release | 2026-11-01 |\n| Modes | Batch (free, queued, 0.5 seconds to 25 minutes), Fast (prepaid, 202 and poll, up to 12 hours), Streaming (prepaid, cumulative SSE for an uploaded recording, up to 12 hours) and live WebSocket (prepaid, up to 12 hours) |\n| Languages | 25+ with automatic detection, among them English, Spanish, French, German, Mandarin, Japanese, Korean, Arabic, Hindi and Portuguese. No full list of codes was found |\n| Streaming latency | Not published. Not measured by us |\n| Diarisation | None. The docs list speaker labels, word timestamps, confidence, chapters, sentiment and redaction as unsupported |\n| Input | PCM16 mono 16 kHz WAV, as a raw body or a JSON data URL. Live input is headerless PCM16 at 16 kHz, or 8 kHz LINEAR16 for Jambonz, which Giggy converts |\n| Output | Transcript JSON with text, detected languages, `audio_duration_ms` and model metadata, read from a signed URL after completion. Cumulative `transcription` events on the live socket |\n| Max file | 25 minutes on Batch. 12 hours on Fast and Streaming, with binary uploads up to 1,382,400,000 audio bytes plus 1 MiB of headers |\n| Free tier | Batch is free with request and queue limits. Personal accounts get free credits topped up to 10,000 a month, about 2.5 hours of Fast. Workspaces get none. Card requirement not stated |\n| Rate limits | Per credential per minute, 60 Batch POSTs, 120 event-stream GETs, 600 reads, 120 MCP requests. Eight live contexts per controller. Queue capacity not published |\n| Trains on API data | No, per the workspace privacy guide. The privacy policy could not be read |\n| Data retention | Optional 12-hour content retention per request. A guide gives Batch audio a seven-day window. No transcript retention period was found |\n| Regions | Optional `compute_eea_adequate_only` flag per request. No data locations or providers named |\n| MCP | Remote Streamable HTTP at `https://giggy.ai/mcp` with a Bearer key. Five tools, `transcribe_audio` (Base64 WAV data URL) and `get_speech_generation` for speech-to-text. Not a live transport |\n| Integrations | `pipecat-giggy` 0.3.3 with live STT for 0.5 to 30 second utterances, a Jambonz custom STT socket, and an open LiveKit pull request that is not a released plugin |\n| Capabilities | speech.stt, speech.batch, speech.streaming, speech.languages |\n| Tags | official, hosted, model, closed-source, streaming, batch, async-jobs, free-tier, python, typescript, openapi, llms-txt, mcp, websocket, new |\n| JSON | https://www.anchorterminal.com/api/v1/tools/giggy-stt.json |\n\n## Score breakdown (methodology v0.7, October 2026 research run)\n\nAssessed 2026-11-04 from public evidence against the published checklist (https://www.anchorterminal.com/benchmark/#checklist). Confidence: low. Performance and Task success pending (no score, not in the total); the total is Σ(score × weight) ÷ 80 over the 7 assessed categories. \"This run\" is each category's share of the 100 points.\n\n| Category | Weight | This run | Score (0–100) | Points |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% | 20 | 50 | 10.0 |\n| Performance | 10% | pending | pending | n/a |\n| Schema \u0026 documentation | 13% | 16.2 | 68 | 11.1 |\n| Agent ergonomics | 13% | 16.2 | 68 | 11.1 |\n| Security \u0026 auth | 14% | 17.5 | 57 | 10.0 |\n| Payments \u0026 pricing | 10% | 12.5 | 30 | 3.8 |\n| Task success | 10% | pending | pending | n/a |\n| Maintenance \u0026 community | 7% | 8.8 | 69 | 6.0 |\n| Transparency \u0026 trust (editorial 23, provenance 36) | 7% | 8.8 | 30 | 2.6 |\n| Negative events | up to −15 | up to −15 | none recorded | 0 |\n| **Total** | | | | **54.5 → C** |\n\n### Why each score\n\n- Reliability 50 (checked 2026-11-04): Hosted reading, as for deepgram-stt and cartesia-ink-stt. Giggy's own status page at https://giggy.ai/status lists one component, Text to speech, operational on 4 November 2026 with 98.61 per cent observed availability and 99.85 per cent completion over 14 days, refreshed every 30 minutes. It has no speech-to-text component and no incident log, so it shows nothing about this surface (5 of 20). No readable incident history, so the floor (5). Rate limits are published per credential, 60 Batch generation POSTs, 120 event-stream GETs, 600 reads and 120 MCP requests a minute, with eight live contexts per controller; Fast and Streaming POSTs have no per-credential limit and Batch queue capacity isn't given (15). 429 carries `Retry-After` with `RateLimit-*` headers, and the docs give a safe-retry rule for uploads, read the generation by UUID after a timeout or 504 and never upload the same recording again. REST transcription has no idempotency key, but the MCP `transcribe_audio` tool takes one (15). No SLA on the pricing page or in the docs; the terms could not be read (0). No beta or preview label on the API, the SDKs or the MCP server (10). 5+5+15+15+0+10 = 50.\n- Performance: Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes.\n- Schema \u0026 documentation 68 (checked 2026-11-04): Model reading, with the API reference. The docs and llms.txt link an OpenAPI 3.1 file at https://api.giggy.ai/v1/openapi.json, but api.giggy.ai's robots.txt could not be read, so the file wasn't fetched. We credit only what the reference pages show of it, typed `mode` values, the privacy booleans and a typed error body, and there is no AsyncAPI file for the live socket (12 of 25). llms.txt and llms-full.txt (10). The docs say when to use each mode and transport, that MCP is not a live transport, that an OpenAI base-URL swap does not work for STT, and which options have no equivalent, more than most listings say about when not to use something (17 of 20). `mode` is an enum of three values and the input format is fixed, but `language` is a free code or name with no published list, and the MCP input schemas were read only from the repository's docs, not from the server (11 of 15). Examples in the SDK READMEs, the examples repository and a Postman collection, and an error table of ten statuses with `type`, `code`, `message`, `status`, `request_id` and `param` fields, though only one code value is named (11 of 15). Paths are under `/v1` and the SDK and Pipecat repositories keep CHANGELOG.md files, dated in two of them, but there is no service changelog (7 of 15). 12+10+17+11+11+7 = 68.\n- Agent ergonomics 68 (checked 2026-11-04): API reading, as for the other speech-to-text listings. The transcript is compact, text, detected languages, audio duration and model metadata, with no word array to trim; on an MCP reading five tools would score 25 (20 of 25). Nothing to page through and no output options, no timestamps, subtitles or speaker labels, and recorded input must be PCM16 mono 16 kHz WAV, so the caller converts everything else; a 12-hour recording goes up in one request (10 of 20). Errors are structured with a type, code, message, status, request ID and parameter, and the reference says what each status means and what to do after a 504, but no list of code values was found and the SDK error classes expose only the status and the raw body (13 of 20). Upload retries are left to the caller with clear rules, read the generation first and never re-upload after a timeout; REST has no idempotency key and `client_request_id` is documented as no guarantee, while MCP `transcribe_audio` takes an `idempotency_key`. The SDKs never retry, and closing an unfinished live socket cancels it (13 of 20). Only the audio is required, with official Python and Node SDKs, but raw REST and MCP default to paid Fast while the SDKs default to free Batch (12 of 15). 20+10+13+13+12 = 68.\n- Security \u0026 auth 57 (checked 2026-11-04): Model reading of the checklist, with training and retention in place of the least-privilege and injection lines, as for deepgram-stt and cartesia-ink-stt. Keys prefixed `giggy_sk_` are shown once on creation or rotation, rejected immediately after revocation, limited to ten per space and tied to the space that made them, with REST budgets that Workspace members can set. No scopes or expiry were found. The key travels in a header only, with no query-string option documented (22 of 30). The workspace privacy guide states 'Giggy does not use user data to train models'. The privacy policy and terms draw by script and could not be read to confirm it (18 of 20). Requests can opt into 12-hour content retention and EEA-adequate compute, and a guide gives Batch audio a seven-day window, but no retention period for transcripts was found and results can vanish after an unstated 'retention cleanup' (9 of 15). Generation history per space and a request ID on errors; no audit log of key or admin actions was found (8 of 15). /.well-known/security.txt answered a client error, none of the six repositories has a SECURITY.md, and no disclosure policy, bug bounty or certification was found on the pages that rendered; the support page that may name a reporting route drew by script (0 of 20). 22+18+9+8+0 = 57.\n- Payments \u0026 pricing 30 (checked 2026-11-04): No x402, MPP or L402 (0). Per-hour prices for Batch, Fast and Streaming and every credit pack published without a login (20). Free Batch transcription and Personal free credits topped up to 10,000 a month, but no page read says whether a card is needed, so half, as other listings read an unstated card requirement (10 of 20). A person signs up in a browser and creates the key there; no programmatic key route was found (0). 0+20+10+0 = 30.\n- Task success: Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored.\n- Maintenance \u0026 community 69 (checked 2026-11-04): Read as a model, on the lines deepgram-stt and cartesia-ink-stt use (recency 30, dated releases 10, deprecation notice 10, support 15, issues 10, SDKs 15, health 10). The Python and Node SDKs released 0.2.1 and the Pipecat adapter 0.3.3 on 1 November 2026, and the examples and MCP repositories changed on 3 November (30). Since 7 October the Node SDK has four tagged releases, the Python SDK six and the Pipecat adapter six, the STT ones from 12 October (10). No deprecation policy or dated notice. The legacy `https://giggy.ai/v1` origin and older SDK transports are kept 'for existing integrations' with no end date (2 of 10). No service changelog; the support and contact pages drew by script, and GitHub issues is the support URL in the plugin manifest (5 of 15). GitHub issues and reply times could not be read, since the GitHub API was not available to this session (0 of 10). Official SDKs current, `giggy` and `@giggy-ai/sdk` at 0.2.1 on PyPI and npm (15). CI workflows in five repositories and publish workflows, the n8n node through npm OIDC with provenance, and two runtime dependencies in each SDK; run results not seen (7 of 10). 30+10+2+5+0+15+7 = 69.\n- Transparency \u0026 trust 30 (checked 2026-11-04): Closed hosted service. The terms exist at /terms but draw by script and could not be read, so their clarity is unknown; the SDK, Pipecat and MCP repositories are ISC and the n8n node MIT (5 of 30). What could be read agrees with itself, no training on user data, an optional 12-hour retention flag, a seven-day window for Batch audio, and the EEA compute flag. The privacy policy, any DPA and a retention period for transcripts were not found or not readable (12 of 30). No deprecation policy or dated notices, only a statement that the legacy origin remains supported (3 of 20). No subprocessors or data locations are named; the EEA-adequate compute option implies processing outside the EEA by default without saying where (3 of 20). 5+12+3+3 = 23.\n\nFix list, everything this grade says the listing lacks, the biggest gain first (25 items). What it covers is at https://www.anchorterminal.com/fixes/giggy-stt.md (JSON https://www.anchorterminal.com/fixes/giggy-stt.json). The whole list for a coding agent comes from `POST https://www.anchorterminal.com/api/v1/fix-list` with `{\"listing\": \"giggy-stt\", \"plan\": \"read\"}`, free while the beta runs\n\n### What we couldn't check\n\n- Kind is `model`, as for deepgram-stt, assemblyai-stt, soniox-stt and cartesia-ink-stt. The about page says Giggy 'built a new speech model' and the product is a hosted API in front of it; the MCP server is one of four surfaces and covers only recorded audio.\n- unchecked: the legal entity. The terms, privacy policy, acceptable use, contact, support and privacy-rights pages returned only titles and metadata because their text is drawn by script, and /terms.md answered a client error. Every page that rendered names only Giggy. Recorded as unchecked, not absent.\n- unchecked: api.giggy.ai, whose robots.txt fetch needed an approval that wasn't given, so the OpenAPI file at https://api.giggy.ai/v1/openapi.json was not read and schema is scored from the reference pages.\n- unchecked: the hosted MCP server's tools/list and input schemas. One plain GET to https://giggy.ai/mcp answered a client error (status not shown to us), consistent with the README's note that the endpoint accepts POST; no session was opened. The five tool names come from the repository, which records an authenticated tools/list of 13 October 2026.\n- unchecked: whether sign-up or free Batch needs a card. Not stated on the pricing, generation-modes, credits-billing or getting-started pages, and the accounts page drew by script. Scored 10 of 20, as other listings read an unstated card requirement.\n- unchecked: RDAP for giggy.ai and pypi.org's robots.txt through the web reader (each needed an approval). PyPI's robots.txt was read from the shell, and only the release RSS feeds were read there.\n- unchecked: GitHub stars, open issues, reply times and workflow results for the six repositories; the GitHub API was not available to this session and only shallow clones were read.\n- The MCP registry name `io.github.GRQDigitalCapital/giggy-mcp` is a namespace under a GitHub account the site never names. The repository says the listing predates a transfer to giggy-ai and that the name can't change without a registry migration. Recorded, not deducted.\n- firstReleased is 2026-10-12, when `pipecat-giggy` 0.2.0 added `GiggySTTService` on 'the existing paid live PCM transcription API'. The npm package's 7 October 2026 release (0.1.0) was text-to-speech only per its README, and the Python SDK with transcription first appears on 13 October. lastRelease is 2026-11-01 (SDKs 0.2.1, Pipecat adapter 0.3.3).\n- The status page covers text-to-speech only. Whether speech-to-text runs on the same infrastructure isn't stated.\n- The listing check's Verli benchmark page could not be located again in our searches and was not re-read; it is cited in `forReviewers.fit` as reported by that check and scores nothing.\n- Giggy doesn't do LocalGhost's or letme's job. It transcribes audio for an agent; it neither hides an agent's identity nor chooses tools for a task.\n\n### Sources\n\n- speech-to-text product page (modes, limits, languages, prices): \u003chttps://giggy.ai/speech-to-text\u003e (seen 2026-11-04)\n- speech API docs (endpoints, live protocol, keys, privacy flags, SDKs, MCP, migration notes): \u003chttps://giggy.ai/docs/speech-api\u003e (seen 2026-11-04)\n- API reference (errors, rate limits, idempotency, retry and reconcile rules): \u003chttps://giggy.ai/docs/api-reference\u003e (seen 2026-11-04)\n- llms.txt (endpoints, live contexts, package pins, partner status): \u003chttps://giggy.ai/llms.txt\u003e (seen 2026-11-04)\n- llms-full.txt (transcript fields, upload size, client_request_id, no diarisation): \u003chttps://giggy.ai/llms-full.txt\u003e (seen 2026-11-04)\n- pricing (STT and TTS prices, credit packs, free credits, expiry, grants): \u003chttps://giggy.ai/pricing\u003e (seen 2026-11-04)\n- generation modes and credits pages (limits, rounding, free credits): \u003chttps://giggy.ai/docs/generation-modes\u003e (seen 2026-11-04)\n- credits and billing docs: \u003chttps://giggy.ai/docs/credits-billing\u003e (seen 2026-11-04)\n- status page (one Text to speech component, 14-day figures): \u003chttps://giggy.ai/status\u003e (seen 2026-11-04)\n- about page ('Made in California', founding team, own speech model): \u003chttps://giggy.ai/about\u003e (seen 2026-11-04)\n- workspace privacy guide (no training on user data): \u003chttps://giggy.ai/docs/guides/workspace-privacy-and-leaving\u003e (seen 2026-11-04)\n- generation history guide (seven-day Batch audio window, 12-hour policy): \u003chttps://giggy.ai/docs/guides/how-generation-history-works\u003e (seen 2026-11-04)\n- workspace roles guide (who creates and manages keys and budgets): \u003chttps://giggy.ai/docs/guides/workspace-roles-and-permissions\u003e (seen 2026-11-04)\n- workspace credits and keys guide (key ownership, budgets): \u003chttps://giggy.ai/docs/guides/workspace-credits-api-keys-and-billing\u003e (seen 2026-11-04)\n- terms, privacy, acceptable use, contact, support and privacy-rights pages (titles only, drawn by script): \u003chttps://giggy.ai/terms\u003e (seen 2026-11-04)\n- robots.txt and sitemap: \u003chttps://giggy.ai/sitemap.xml\u003e (seen 2026-11-04)\n- Node SDK source, CHANGELOG and tags (v0.1.0 7 October to v0.2.1 1 November 2026): \u003chttps://github.com/giggy-ai/giggy-js\u003e (seen 2026-11-04)\n- Python SDK source, CHANGELOG and tags (py-v0.1.0 13 October to py-v0.2.1 1 November 2026): \u003chttps://github.com/giggy-ai/giggy-python\u003e (seen 2026-11-04)\n- Pipecat adapter CHANGELOG (STT added in 0.2.0 on 12 October 2026): \u003chttps://github.com/giggy-ai/pipecat-giggy\u003e (seen 2026-11-04)\n- MCP repository (server.json, tool docs, directory-submission status): \u003chttps://github.com/giggy-ai/giggy-mcp\u003e (seen 2026-11-04)\n- examples repository (integration status table, LiveKit pull request): \u003chttps://github.com/giggy-ai/giggy-examples\u003e (seen 2026-11-04)\n- official MCP registry search (io.github.GRQDigitalCapital/giggy-mcp 1.0.0 to 1.0.2): \u003chttps://registry.modelcontextprotocol.io/v0/servers?search=giggy\u003e (seen 2026-11-04)\n- npm registry document for @giggy-ai/sdk (created 7 October 2026, maintainer giggy): \u003chttps://registry.npmjs.org/@giggy-ai%2Fsdk\u003e (seen 2026-11-04)\n- PyPI release feed for giggy: \u003chttps://pypi.org/rss/project/giggy/releases.xml\u003e (seen 2026-11-04)\n- PyPI release feed for pipecat-giggy: \u003chttps://pypi.org/rss/project/pipecat-giggy/releases.xml\u003e (seen 2026-11-04)\n\n## Score history\n\nEvery move of a score since the listing was graded, newest first, with its cause. A score can't move without an entry here. JSON: https://www.anchorterminal.com/api/v1/tools/giggy-stt/history.json\n\n- 2026-11-04: graded 54.5 C (methodology 0.7)\n\n## Who's behind it (provenance 36/100, checked 2026-11-04)\n\n| Check | Finding | Points |\n| --- | --- | --- |\n| Legal entity named | not found | 0/20 |\n| Domain age | giggy.ai, no registry record we could read | 0/15 |\n| Endpoint on the vendor's domain | api.giggy.ai | 15/15 |\n| Terms of service | published, not read by us yet | 4/10 |\n| Privacy policy | published, not read by us yet | 4/10 |\n| Status page | giggy.ai/status | 10/10 |\n| Changelog | not found | 0/10 |\n| security.txt | not found | 0/10 |\n| People named | not researched yet | n/a |\n| Support route | help pages, a community | 5/5 |\n\nunchecked: the legal entity. /terms, /privacy, /acceptable-use, /contact, /docs/support and /docs/privacy-rights returned only their titles and metadata, because their text is drawn by script, and /terms.md answered a client error. The about, pricing, grants and docs pages that did render name only Giggy, with 'Made in California' on the about page. The repositories' licences say 'Copyright 2026 Giggy'.\n\nThe status page tracks one component, Text to speech, with 14-day availability and completion figures refreshed every 30 minutes and no incident history. It has no speech-to-text component.\n\nNo service changelog was found. The SDK and Pipecat repositories carry CHANGELOG.md files, dated in the Python SDK and the Pipecat adapter.\n\nhttps://giggy.ai/.well-known/security.txt answered a client error. None of the six public repositories has a SECURITY.md.\n\nrobots.txt on giggy.ai allows / and disallows /api/, /ops/, /app/ and /blog/*.md for `*` and for the named AI agents, with no Content-Signal line. api.giggy.ai's robots.txt could not be read (the fetch needed an approval that wasn't given), so nothing on that host was fetched, the OpenAPI file included.\n\nunchecked: RDAP for giggy.ai (refused for want of an approval on 4 November 2026).\n\n### Terms and privacy, as read\n\nA reading by a fixed set of rules, each answered with the vendor's own sentence. Not legal advice.\n\n**Terms of service** (https://giggy.ai/terms), not read yet.\n\n\n**Privacy policy** (https://giggy.ai/privacy), not read yet.\n\n\n## Humans behind the project (researched 2026-11-04 from public pages, not part of the grade)\n\n### Key people\n\n- No people named yet.\n- Note: No person is named with a role on any first-hand page we could read. The about page says the founding team 'previously led video products at Meta and YouTube' and that the company is 'Made in California', but names nobody. The home, speech-to-text, pricing, grants, status, docs and guide pages name only Giggy. The terms, privacy policy, acceptable use, contact, support and privacy-rights pages, and the blog index (described as 'founder notes'), drew their text by script and returned only titles, so whoever they name is unchecked. A package author on PyPI and commit authors in the GitHub repositories are not a role and were not used, nor was the submitter's name; the MCP registry namespace belongs to a GitHub account, GRQDigitalCapital, that the site never names. Ownership is unknown because no legal entity could be read. Investors were looked for on the about, pricing and grants pages, the sitemap (no press or funding page) and the blog index (drawn by script), and in four web searches for Giggy with funding, seed, founders, Meta and YouTube, terms and the giggy.ai domain, which returned only directory listings, Pipecat's Giggy TTS page and unrelated companies such as Gigged.AI and Giga; no round, backer or accelerator page was found. RDAP for giggy.ai was not read.\n- Giggy: GitHub https://github.com/giggy-ai\n\n### Getting support\n\n- Help: https://giggy.ai/docs/support\n- Help: https://giggy.ai/docs/speech-api\n- Help: https://giggy.ai/status\n- Community (GitHub issues (giggy-mcp, the support URL in the plugin manifest)): https://github.com/giggy-ai/giggy-mcp/issues\n- Sources: https://giggy.ai/about, https://giggy.ai/pricing, https://giggy.ai/giggy-grants, https://giggy.ai/sitemap.xml, https://giggy.ai/blog, https://giggy.ai/contact, https://giggy.ai/docs/support, https://giggy.ai/terms, https://giggy.ai/privacy, https://github.com/giggy-ai/giggy-mcp, https://github.com/giggy-ai/giggy-js, https://github.com/giggy-ai/giggy-python, https://registry.modelcontextprotocol.io/v0/servers?search=giggy\n\n## Live (updated 2026-11-04 20:05 UTC)\n\n- Right now: up, HTTP 404, 270 ms, checked 2026-11-04 20:05 UTC (get on `https://api.giggy.ai/v1`)\n- Uptime 24h 100.0% (48 probes) · 30 days 100.0% (48 probes) · p50 301 ms · p95 654 ms\n- Vendor status page: unknown, no machine-readable status found\n- mcp-registry `io.github.GRQDigitalCapital/giggy-mcp` 1.0.2\n- security.txt: none\n- Always current: https://www.anchorterminal.com/api/v1/live/giggy-stt.json\n\n## Probe metrics\n\nNot measured yet. Our benchmark probes haven't run, so there's no availability, latency or error rate from a run and Performance is pending. Live uptime, where we poll the endpoint, is under Live and doesn't change the score.\n\n## Prices\n\n| Item | Price | Unit | Note |\n| --- | --- | --- | --- |\n| Fast, Pro, Studio or Scale credits | $0.0007 | per minute of audio | published as $0.04 per input audio hour, rounded up to one credit per request |\n| Streaming, Pro, Studio or Scale credits | $0.0013 | per minute of audio | published as $0.08 per input audio hour |\n| Fast, Starter pack | $0.0008 | per minute of audio | $3 for 261,300 credits, $0.0459 an hour |\n| Streaming, Starter pack | $0.0015 | per minute of audio | $0.0918 an hour |\n| Batch | free | per minute of audio | free, queued, 0.5 seconds to 25 minutes a recording |\n\nAcross all listings: https://www.anchorterminal.com/prices/index.md\n\n## What a task costs (from the prices above)\n\n| Task | Cost | At |\n| --- | --- | --- |\n| Transcribe a one-hour meeting (60 minutes of recorded audio) | $0.04 to $0.09 | Fast, Pro, Studio or Scale credits to Streaming, Starter pack |\n\nThe quantity times this listing's own price, from its cheapest item in that unit to its dearest. Plans, minimums and free allowances aren't counted.\n\n## Strengths\n\n- Fast is $0.04 and Streaming $0.08 per input audio hour on Pro credits, and Batch is free for recordings of 0.5 seconds to 25 minutes\n- Per-credential rate limits are published with numbers, 429 carries `Retry-After`, and `RateLimit-*` headers report what is left\n- The docs say to read a generation by UUID after a timeout or 504 instead of uploading again, and the SDKs never retry paid requests\n- llms.txt, llms-full.txt and SDK READMEs state what the API does not do, including no diarisation, timestamps or OpenAI-compatible STT\n- Official Python and Node SDKs at 0.2.1, a Pipecat adapter with live STT and a remote MCP server, all released within the last four weeks\n\n## Weaknesses\n\n- Recorded input must be PCM16 mono 16 kHz WAV, so MP3, M4A, stereo or other sample rates need converting before upload\n- No word timestamps, speaker labels, confidence scores or redaction, per the speech API docs\n- The status page has one component, Text to speech, and no incident history, so speech-to-text availability isn't shown\n- REST transcription has no idempotency key, and `client_request_id` is documented as not making a retried upload safe\n- The terms, privacy policy, support and contact pages draw by script, and no company, address or security contact was found on any page read\n\n\n\n## Before you call it (notes for agents)\n\n1. Pass `mode=batch` explicitly for free transcription. Raw REST and MCP default to paid Fast when `mode` is omitted.\n2. Convert audio to PCM16 mono 16 kHz WAV first and send it as the raw body with `Content-Type: audio/wav`.\n3. Keep the `generation_uuid` from the 202 and poll `GET /v1/generations/{uuid}`. Never re-upload after a timeout or 504 before reading that generation.\n4. Fetch the transcript from the signed `generation.result.url` after completion, without the API key. It can disappear after retention cleanup.\n5. On the live WebSocket, replace earlier text with each cumulative `transcription` event and publish final text only after `input_complete`.\n\n## Connect\n\nInstall:\n\n```bash\npython -m pip install giggy==0.2.1   # or: npm install @giggy-ai/sdk\n```\n\nFirst request:\n\n```bash\ncurl -X POST \"https://api.giggy.ai/v1/audio/transcriptions?mode=batch\u0026language=en\" \\\n  -H \"xi-api-key: $GIGGY_API_KEY\" -H \"Content-Type: audio/wav\" \\\n  --data-binary @recording.wav\n```\n\nMCP client configuration:\n\n```json\n{\n  \"mcpServers\": {\n    \"giggy-speech\": {\n      \"headers\": {\n        \"Authorization\": \"Bearer ${GIGGY_API_KEY}\"\n      },\n      \"type\": \"http\",\n      \"url\": \"https://giggy.ai/mcp\"\n    }\n  }\n}\n```\n\n## Similar tools\n\nRanked by shared capabilities, then score. Same-category tools with no shared capability key are listed last.\n\n| Tool | Grade | Score | Rank | Shared capabilities | x402 | Markdown |\n| --- | --- | --- | --- | --- | --- | --- |\n| Azure AI Speech speech-to-text | BB | 75.1 | 61 | speech.stt, speech.streaming, speech.batch, speech.languages | no | https://www.anchorterminal.com/tools/azure-speech-to-text.md |\n| OpenAI Speech to Text | BB | 75 | 64 | speech.stt, speech.streaming, speech.batch, speech.languages | no | https://www.anchorterminal.com/tools/openai-speech-to-text.md |\n| Deepgram Speech-to-Text (Nova-3, Flux) | BB | 74.4 | 76 | speech.stt, speech.streaming, speech.batch, speech.languages | no | https://www.anchorterminal.com/tools/deepgram-stt.md |\n| Amazon Transcribe | BB | 73.6 | 92 | speech.stt, speech.streaming, speech.batch, speech.languages | no | https://www.anchorterminal.com/tools/amazon-transcribe.md |\n| ElevenLabs Scribe Speech to Text API | BB | 73 | 101 | speech.stt, speech.streaming, speech.batch, speech.languages | no | https://www.anchorterminal.com/tools/elevenlabs-scribe.md |\n| Gladia Speech-to-Text API + MCP | B | 69.8 | 205 | speech.stt, speech.streaming, speech.batch, speech.languages | no | https://www.anchorterminal.com/tools/gladia-stt.md |\n\n## Panel reviews (0)\n\nReviewed by the Anchor panel (https://www.anchorterminal.com/reviewers/index.md): .\n\nDesk reviews, written from public documentation, pricing, terms, source and status history on 1 October 2026. No calls made. For a desk review, the outcome says whether the reviewer's questions could be answered from public material: success, partial or failure. How reviews work: https://www.anchorterminal.com/reviews/how-it-works.md\n\n## Notable\n\n- `POST /v1/audio/transcriptions` takes a raw PCM16 mono 16 kHz WAV body with `mode` (`batch`, `fast` or `streaming`) and an optional `language`. Batch and Fast answer HTTP 202 with a generation UUID to poll at `GET /v1/generations/{uuid}`; Streaming answers with cumulative transcript server-sent events (source: \u003chttps://giggy.ai/docs/speech-api\u003e)\n- Live transcription runs over `wss://api.giggy.ai/v1/audio/transcriptions` with a `start` message, binary PCM, `stop` and an `input_complete` event, for 0.5 seconds to 12 hours. Admission reserves 96,000 credits and settles on accepted audio, and closing unfinished input cancels the work (source: \u003chttps://giggy.ai/docs/speech-api\u003e)\n- Raw REST and MCP default to paid Fast when `mode` is omitted, while both SDKs default to free Batch (source: \u003chttps://giggy.ai/docs/speech-api\u003e)\n- The docs say speaker labels, word timestamps, confidence, chapters, sentiment and redaction have no equivalent in the API. A transcript holds text, detected languages, audio duration and model metadata (source: \u003chttps://giggy.ai/llms-full.txt\u003e)\n- Rate limits per credential are 60 Batch generation POSTs, 120 event-stream GETs, 600 reads and 120 MCP requests a minute, with `RateLimit-*` headers and `Retry-After` on 429. Fast and Streaming POSTs have no per-credential limit (source: \u003chttps://giggy.ai/docs/api-reference\u003e)\n- After a timeout or 504 the docs say to read the generation by UUID before doing anything else, and that 'A timeout is not permission to upload the same recording again'. REST takes an optional `client_request_id`, which the SDK docs say is not an idempotency guarantee; the MCP `transcribe_audio` tool takes an `idempotency_key` (source: \u003chttps://giggy.ai/docs/speech-api, https://github.com/giggy-ai/giggy-mcp\u003e)\n- The status page at https://giggy.ai/status lists one component, Text to speech, with observed availability of 98.61 per cent and completion of 99.85 per cent over 14 days on 4 November 2026. It has no speech-to-text component and no incident history\n- A workspace privacy guide states 'Giggy does not use user data to train models'. Requests can set `content_retention_12h` and `compute_eea_adequate_only`; the privacy policy and terms draw their text by script and were not read (source: \u003chttps://giggy.ai/docs/guides/workspace-privacy-and-leaving\u003e)\n- The remote MCP server at https://giggy.ai/mcp has five tools, two for speech-to-text (`transcribe_audio`, `get_speech_generation`). It is registered as `io.github.GRQDigitalCapital/giggy-mcp` 1.0.2, a namespace under a GitHub account the site never names, and the repository moved to giggy-ai (source: \u003chttps://github.com/giggy-ai/giggy-mcp/blob/main/docs/directory-submission.md\u003e)\n- The about page says the company is 'Made in California', that its founding team 'previously led video products at Meta and YouTube' and that it 'built a new speech model'. No company, person or address is named on any page we could read (source: \u003chttps://giggy.ai/about\u003e)\n- The same company sells text-to-speech, voice design and voice cloning through the same keys, credits and status page. Those are outside this listing\n\n- #15 of 15 in Best speech-to-text APIs for AI agents: https://www.anchorterminal.com/best/speech-to-text/index.md\n- All 253 stt comparisons: https://www.anchorterminal.com/compare/speech-to-text/index.md\n\n## Compare\n\n- [Amazon Transcribe vs Giggy Speech to Text](https://www.anchorterminal.com/compare/amazon-transcribe-vs-giggy-stt.md): BB 73.6 vs C 54.5\n- [AssemblyAI Speech-to-Text (Universal) vs Giggy Speech to Text](https://www.anchorterminal.com/compare/assemblyai-stt-vs-giggy-stt.md): B 66.8 vs C 54.5\n- [Azure AI Speech speech-to-text vs Giggy Speech to Text](https://www.anchorterminal.com/compare/azure-speech-to-text-vs-giggy-stt.md): BB 75.1 vs C 54.5\n- [Cartesia Ink vs Giggy Speech to Text](https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-giggy-stt.md): B 67 vs C 54.5\n- [Deepgram Speech-to-Text (Nova-3, Flux) vs Giggy Speech to Text](https://www.anchorterminal.com/compare/deepgram-stt-vs-giggy-stt.md): BB 74.4 vs C 54.5\n- [ElevenLabs Scribe Speech to Text API vs Giggy Speech to Text](https://www.anchorterminal.com/compare/elevenlabs-scribe-vs-giggy-stt.md): BB 73 vs C 54.5\n- [Giggy Speech to Text vs Gladia Speech-to-Text API + MCP](https://www.anchorterminal.com/compare/giggy-stt-vs-gladia-stt.md): C 54.5 vs B 69.8\n- [Giggy Speech to Text vs Google Cloud Speech-to-Text](https://www.anchorterminal.com/compare/giggy-stt-vs-google-speech-to-text.md): C 54.5 vs B 66.6\n- [Giggy Speech to Text vs Groq Speech-to-Text](https://www.anchorterminal.com/compare/giggy-stt-vs-groq-speech-to-text.md): C 54.5 vs BB 70.1\n- [Giggy Speech to Text vs Mistral Voxtral Transcribe](https://www.anchorterminal.com/compare/giggy-stt-vs-mistral-voxtral-transcribe.md): C 54.5 vs B 63.1\n- [Giggy Speech to Text vs OpenAI Speech to Text](https://www.anchorterminal.com/compare/giggy-stt-vs-openai-speech-to-text.md): C 54.5 vs BB 75\n- [Giggy Speech to Text vs Rev AI Speech-to-Text API](https://www.anchorterminal.com/compare/giggy-stt-vs-rev-ai-stt.md): C 54.5 vs C 57.9\n- [Giggy Speech to Text vs Soniox Speech-to-Text](https://www.anchorterminal.com/compare/giggy-stt-vs-soniox-stt.md): C 54.5 vs C 58.2\n- [Giggy Speech to Text vs Speechmatics Speech-to-Text](https://www.anchorterminal.com/compare/giggy-stt-vs-speechmatics-stt.md): C 54.5 vs B 67.8\n\n## Verify this listing\n\nFor the vendor. The badge or a plain link to this page verifies the listing, from a page on giggy.ai or one of its subdomains, or the README at the root of github.com/giggy-ai/giggy-js. It shows the listing is the vendor's and that the vendor knows it's here, and it never changes a grade, rank or review. The vendor sends the page's address to `POST https://www.anchorterminal.com/api/v1/verify` as `{\"slug\": \"giggy-stt\", \"url\": \"…\"}`, or calls the `verify_listing` tool at https://www.anchorterminal.com/mcp. We fetch the page once, then again every week; two failed checks in a row and the verification lapses, and a later pass restores it. What we check: https://www.anchorterminal.com/builders/index.md#verify\n\nHTML badge:\n\n```html\n\u003ca href=\"https://www.anchorterminal.com/tools/giggy-stt\"\u003e\u003cimg src=\"https://www.anchorterminal.com/badges/giggy-stt.svg\" alt=\"Giggy Speech to Text on Anchor Terminal\" height=\"20\"\u003e\u003c/a\u003e\n```\n\nMarkdown badge, for a README:\n\n```markdown\n[![Giggy Speech to Text on Anchor Terminal](https://www.anchorterminal.com/badges/giggy-stt.svg)](https://www.anchorterminal.com/tools/giggy-stt)\n```\n\nPlain link:\n\n```html\n\u003ca href=\"https://www.anchorterminal.com/tools/giggy-stt\"\u003eGiggy Speech to Text on Anchor Terminal\u003c/a\u003e\n```\n\n## Share this listing\n\nFor the vendor. Sharing assets for social media, two PNGs of 1200 × 630 that say Giggy Speech to Text is listed on Anchor Terminal, with the vendor's logo and this page's address and no grade or score.\n\n- Dark: https://www.anchorterminal.com/assets/share/giggy-stt-dark.png\n- Light: https://www.anchorterminal.com/assets/share/giggy-stt-light.png\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-04",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Terminal",
        "url": "https://www.anchorterminal.com/tools/"
      },
      {
        "name": "Speech-to-text",
        "url": "https://www.anchorterminal.com/categories/speech-to-text"
      },
      {
        "name": "Giggy Speech to Text",
        "url": ""
      }
    ],
    "description": "Giggy's hosted speech-to-text API transcribes 16 kHz mono WAV recordings in free Batch, prepaid Fast and Streaming modes, and live audio over a WebSocket, with Python and Node SDKs and a remote MCP server.",
    "facts": [
      "rank #867 of 1349",
      "API key auth",
      "0 desk reviews"
    ],
    "h1": "Giggy Speech to Text",
    "image": "https://www.anchorterminal.com/assets/og/tools-giggy-stt.png",
    "path": "/tools/giggy-stt",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Giggy Speech to Text review (2026): pricing, alternatives and grade C",
    "toc": null,
    "updated": "2026-11-04",
    "url": "https://www.anchorterminal.com/tools/giggy-stt"
  },
  "tokens": {
    "markdown": 9800,
    "slim": 1880
  },
  "version": 1
}
