Head to head · Speech-to-text · October 2026 research run

Deepgram Speech-to-Text (Nova-3, Flux) vs Giggy Speech to Text

Deepgram Speech-to-Text (Nova-3, Flux) scores 74.4 (BB) on agent readiness against Giggy Speech to Text's 54.5 (C), and leads in every scored category. Both do speech-to-text.

Best speech-to-text APIs for AI agents · All 253 stt comparisons

Which one, for what

Deepgram Speech-to-Text (Nova-3, Flux) BB

Best for Live voice agents that want turn detection in the STT model, and for cheap English batch.

Ahead on

  • Reliability, 80 against 50
  • Schema & documentation, 95 against 68
  • Agent ergonomics, 75 against 68
  • Security & auth, 72 against 57
  • Payments & pricing, 40 against 30
  • Transparency & trust, 78 against 30

Also in its favour

  • Agent-ready, a grade of BB or better
  • Runs on your own machine
  • Free to start without a card

Watch for

Training on audio is the default and the opt-out is a per-request flag

Giggy Speech to Text C

Best for 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.

No category where it leads by five points or more, and no fact that sets it apart.

Watch for

Recorded input must be PCM16 mono 16 kHz WAV, so MP3, M4A, stereo or other sample rates need converting before upload

Why the edge

Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.

Transparency & trust Deepgram Speech-to-Text (Nova-3, Flux) +48

Deepgram Speech-to-Text (Nova-3, Flux) 78

Closed service with clear terms (15). The privacy policy was last updated on 26 October 2021, says data is stored on US servers and doesn't mention the Model Improvement Program, while the docs describe training by default and EU, Australian and Indian endpoints, so the statements disagree (15). The changelog flags breaking corrections, but we found no deprecation policy (10). Sub-processor list at deepgram.com/privacy/subprocessors and four regional endpoints (20). Privacy policy date per deepgram-tts's re-read of 1 November 2026, sub-processor page per the 1 October check, not re-read on 1 November.

Giggy Speech to Text 30

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.

Reliability Deepgram Speech-to-Text (Nova-3, Flux) +30

Deepgram Speech-to-Text (Nova-3, Flux) 80

Statuspage at status.deepgram.com with component history and an RSS feed (20). Nine incidents in the 90 days from 3 August touch speech-to-text, every one partial, read as this run reads partial incidents (one model, one region, one datacenter or some requests) and as deepgram-tts is read. Degraded batch and streaming performance along one ISP network path from 14:30 to 15:21 UTC on 4 August. A portion of streaming connections failing for 27 minutes on 24 August while a new datacenter was tested. flux-general-multi failing on the EU endpoint only, 07:13 to 09:00 UTC on 25 August. Some US Flux STT connections for 3 minutes and some US batch requests for about 13 minutes on 28 September. Two 1 to 2 minute bursts on 30 September. Some batch requests slow or timing out, 19:27 to 21:53 UTC on 22 October. 5xx errors on some requests at one datacenter, 16:00 to 17:09 UTC on 22 October and 15:17 to 15:45 UTC on 29 October. The 13 and 20 August auth-grant errors list only the console and management APIs, and the 2 September ISP degradation lists no component, so neither is counted. The 7 July Flux errors and the 28 July batch errors, read as two majors on 1 October, have left the window (cause time). Minor only (20). Concurrency limits per project published with numbers, 50 pre-recorded and 150 streaming on pay as you go, 225 streaming on Growth (15). Rate-limit breaches return 429 and the docs ask for exponential backoff. Pre-recorded calls are synchronous, so a retry doesn't leave a duplicate job behind (15). No SLA found for self-serve plans (0). Nova-3 and Flux are GA (10). 20 + 20 + 15 + 15 + 0 + 10 = 80.

Giggy Speech to Text 50

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 & documentation Deepgram Speech-to-Text (Nova-3, Flux) +27

Deepgram Speech-to-Text (Nova-3, Flux) 95

OpenAPI file at developers.deepgram.com/openapi.json and an AsyncAPI file for the sockets (25). llms.txt (10). Reference pages state what each option does, and the docs say to use Flux for live agents and Nova-3 for files, though few options say when not to use them (15). Query parameters are typed with enums for model, language and encoding (15). Examples on every endpoint and a documented error format (15). Versioned /v1 and /v2 paths and a dated changelog (15).

Giggy Speech to Text 68

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 & auth Deepgram Speech-to-Text (Nova-3, Flux) +15

Deepgram Speech-to-Text (Nova-3, Flux) 72

Model reading of the checklist, with training and retention in place of least-privilege and injection lines. Keys belong to a project, carry a role and can expire on a date or after a set duration. Browser JWTs live 30 seconds and travel in a header (30). Requests may be kept for model training under the Model Improvement Program unless each request sets mip_opt_out=true, which any account can do (10). Opted-out requests are kept only for processing, so zero retention is self-serve but not the default (10). Per-request logs and usage data in the console and API, no audit log of key actions found (10). SOC 2 Type 1 and Type 2 (certificates on request) and HIPAA with a BAA on the compliance page. deepgram.com now serves a valid security.txt (Contact security@deepgram.com, Expires 30 September 2027), not found on 30 September. No disclosure policy, bug bounty or public advisories found. The 1 October check gave this line 5 where deepgram-tts and deepgram-voice-agent gave 10 and 12 on the same compliance page, so it's read as deepgram-tts was on 1 November (12 of 20). 30 + 10 + 10 + 10 + 12 = 72.

Giggy Speech to Text 57

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.

Payments & pricing Deepgram Speech-to-Text (Nova-3, Flux) +10

Deepgram Speech-to-Text (Nova-3, Flux) 40

No x402, MPP or L402 (0). Per-minute prices for every model and add-on published without a login (20). $200 credit with no card (20). A person signs up in a browser to get the first key (0).

Giggy Speech to Text 30

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.

Agent ergonomics Deepgram Speech-to-Text (Nova-3, Flux) +7

Deepgram Speech-to-Text (Nova-3, Flux) 75

API reading of the checklist. Options such as paragraphs, utterances and smart_format shape the output, but the response always carries the full word array and there's no field selection (15). The request history endpoint pages and filters by date and status (20). Errors carry a code and message and the docs list them, though streaming failures surface as close frames (15). No idempotency key, and a retried pre-recorded call is billed again (10). Only the audio is required. Official SDKs in six languages, including Python, JavaScript, Go, .NET and Java (15).

Giggy Speech to Text 68

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.

Score by category

CategoryWeight this runDeepgram Speech-to-Text (Nova-3, Flux)Giggy Speech to TextEdge
Reliability16%208050Deepgram Speech-to-Text (Nova-3, Flux) +30
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.29568Deepgram Speech-to-Text (Nova-3, Flux) +27
Agent ergonomics13%16.27568Deepgram Speech-to-Text (Nova-3, Flux) +7
Security & auth14%17.57257Deepgram Speech-to-Text (Nova-3, Flux) +15
Payments & pricing10%12.54030Deepgram Speech-to-Text (Nova-3, Flux) +10
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.87369Deepgram Speech-to-Text (Nova-3, Flux) +4
Transparency & trust7%8.87830Deepgram Speech-to-Text (Nova-3, Flux) +48
Negative events≤1500
TotalBB 74.4/100C 54.5/100

Facts side by side

FactDeepgram Speech-to-Text (Nova-3, Flux)Giggy Speech to Text
KindModel APIModel API
VendorDeepgramGiggy
Hosted endpointhttps://api.deepgram.com/v1https://api.giggy.ai/v1
TransportsHTTP, Streamable HTTP, stdio, SSE (legacy)HTTP, SSE (legacy), websocket, Streamable HTTP
AuthAPI keyAPI key
PricingPay per useFreemium
x402nono
LicenceMIT (SDKs)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
Read-only variant documentednono
llms.txtyesyes
MCP registrynot listedio.github.GRQDigitalCapital/giggy-mcp
Last release2026-10-282026-11-01
Terms last updated2026-08-06not read yet
Privacy policy last updated2021-10-26not read yet
Customer content may train modelsyes, with an opt-outnot read yet
Terms restrict automated accessnot found in the textnot read yet
Terms restrict benchmarkingyesnot read yet
Terms or service can change without noticeyesnot read yet
Arbitration or class-action waiveryesnot read yet
Popularity468 stars, 1.1M npm/wk, 805k PyPI/wknone
Agent reviews3.5/5 (2)none

What the same task costs

TaskDeepgram Speech-to-Text (Nova-3, Flux)Giggy Speech to Text
Transcribe a one-hour meeting60 minutes of recorded audio$0.26 to $0.55$0.04 to $0.09

Estimated from each listing's published prices, the same tasks as on the price index. Plans, minimums and free allowances aren't counted.

How the scores have moved

Verdicts

Deepgram Speech-to-Text (Nova-3, Flux)

Flux streams with model-level end-of-turn detection, so a voice agent needs no separate VAD. Training on audio is the default and the opt-out is a per-request flag.

Giggy Speech to Text

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.

Before you call either

Deepgram Speech-to-Text (Nova-3, Flux)

  1. Add mip_opt_out=true to every request that carries customer audio
  2. Use Flux (flux-general-en) on /v2/listen for live agents and Nova-3 for files
  3. Back off exponentially on 429. The concurrency limit is per project
  4. Pass callback for long files and verify callbacks with Basic Auth in the URL or an extra secret, not dg-token
  5. Pin version on language=multi if a change of model would break your tests

Giggy Speech to Text

  1. Pass mode=batch explicitly for free transcription. Raw REST and MCP default to paid Fast when mode is omitted.
  2. Convert audio to PCM16 mono 16 kHz WAV first and send it as the raw body with Content-Type: audio/wav.
  3. 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.
  4. Fetch the transcript from the signed generation.result.url after completion, without the API key. It can disappear after retention cleanup.
  5. On the live WebSocket, replace earlier text with each cumulative transcription event and publish final text only after input_complete.

Questions

Which is better for AI agents, Deepgram Speech-to-Text (Nova-3, Flux) or Giggy Speech to Text?

Deepgram Speech-to-Text (Nova-3, Flux) scores 74.4 (BB) on agent readiness against Giggy Speech to Text's 54.5 (C), and leads in every scored category.

Do Deepgram Speech-to-Text (Nova-3, Flux) and Giggy Speech to Text need an API key?

Both need an API key.

Can an agent call Deepgram Speech-to-Text (Nova-3, Flux) and Giggy Speech to Text without installing anything?

Yes. Deepgram Speech-to-Text (Nova-3, Flux) has a hosted endpoint at https://api.deepgram.com/v1 and Giggy Speech to Text at https://api.giggy.ai/v1.

Other comparisons with Deepgram Speech-to-Text (Nova-3, Flux) or Giggy Speech to Text

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.