{"id":23784,"date":"2026-09-23T15:51:49","date_gmt":"2026-09-23T11:51:49","guid":{"rendered":"https:\/\/krisp.ai\/blog\/?p=23784"},"modified":"2026-09-23T19:05:10","modified_gmt":"2026-09-23T15:05:10","slug":"voice-isolation-benchmark","status":"publish","type":"post","link":"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/","title":{"rendered":"STT handles noise now. It still can&#8217;t handle a background voice."},"content":{"rendered":"<p>Speech recognition has become very good at noise. It has not become good at a second person talking. We recorded 265 real conversations with a competing voice in the room, labeled every segment by hand, and measured what happens to eleven speech-to-text systems with and without Krisp Voice Isolation. Today we are opening the dataset, the model outputs and the evaluation harness.<\/p>\n<p>Modern speech-to-text handles traffic, air conditioning and keyboard clatter without much trouble. Point it at an open-plan office after lunch, or a call-center floor where the agent two seats over is mid-conversation, and the transcript comes apart.<\/p>\n<p>The reason is structural. Noise is removable because it does not resemble speech, so a model can learn its shape and subtract it. A competing voice has the same statistics as the voice you want to keep. Noise robustness has nothing to key on. Pulling one speaker out from under another is a different problem from filtering, and it needs a model built for it.<\/p>\n<p>For a voice agent this breaks two things at once. Words from the wrong person enter the transcript, so the agent reasons over things the user never said. And the system mistakes the background speaker for the primary one, so it hands over the turn, interrupts, or answers a question nobody asked it.<\/p>\n<figure class=\"post_quote post_quote--brand\"><blockquote class=\"post_quote_text\"><p>We looked for an industry benchmark that covers these three conditions. We did not find one. So we built our own dataset and methodology to evaluate STT engines with and without Voice Isolation.<\/p><\/blockquote><\/figure>\n<div class=\"metrics metrics--rule\"><div class=\"metrics_row\"><div class=\"metrics_item\"><p class=\"metrics_value\">\u221273%<\/p><p class=\"metrics_label\">Word error rate<\/p><\/div><div class=\"metrics_item\"><p class=\"metrics_value\">265<\/p><p class=\"metrics_label\">Recordings<\/p><\/div><div class=\"metrics_item\"><p class=\"metrics_value\">11<\/p><p class=\"metrics_label\">STT configs<\/p><\/div><div class=\"metrics_item\"><p class=\"metrics_value\">4<\/p><p class=\"metrics_label\">VI models<\/p><\/div><\/div><\/div>\n<h2>Evaluating in the conditions that actually break things<\/h2>\n<p>Everything was recorded by the Krisp team in real environments. No synthetic mixing, no noise added in post. For the call-center set we went to working call centers and recorded inside their normal shift.<\/p>\n<p>Most Work and Call Center recordings follow the same four-step script: the primary speaker begins, a second speaker joins, the primary falls silent while the second keeps talking, then the primary returns. That third window is the stress test, because the correct transcript for it is empty.<\/p>\n<figure class=\"post_figure\"><p class=\"post_figure_title\">One recording, four labeled segments<\/p><img src=\"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2026\/09\/segment-timeline-2.png\" alt=\"Timeline of one recording: primary only, then primary plus secondary, then secondary alone, then primary only again\" loading=\"lazy\"\/><figcaption class=\"post_figure_caption\"> The correct transcript for the <code>secondary<\/code> window is empty. It is where speech-to-text fails hardest, because it transcribes the background voice as though it were the target.                    <\/figcaption><\/figure>\n<p>Three conditions matter, and a voice pipeline has to get all three right:<\/p>\n<ol class=\"steps\"><li class=\"step_row\"><b class=\"step_title\">Only the primary speaker talks<\/b><span class=\"step_text\">The easy case. Nothing should be removed.<\/span><\/li><li class=\"step_row\"><b class=\"step_title\">Primary talks, a secondary voice competes<\/b><span class=\"step_text\">Keep the primary intact, drop the other voice.<\/span><\/li><li class=\"step_row\"><b class=\"step_title\">Primary is silent, secondary keeps talking<\/b><span class=\"step_text\">Output should be silence.<\/span><\/li><\/ol>\n<h3>Three scenarios<\/h3>\n<div class=\"scen\"><div class=\"scen_row\"><div class=\"scen_head\"><h4 class=\"scen_name\">Work<\/h4><div class=\"scen_where\">Offices, homes, meeting rooms<\/div><\/div><p class=\"scen_text\">The second voice is colleagues, family, people sharing the room. Small to large conference rooms and open floors, captured on everything from professional Jabra headsets down to consumer earbuds.<\/p><\/div><div class=\"scen_row\"><div class=\"scen_head\"><h4 class=\"scen_name\">Call center<\/h4><div class=\"scen_where\">Four live floors<\/div><\/div><p class=\"scen_text\">The second voice is the neighbouring agent on a real call, the one seated closest to the primary&#8217;s mic. Background speech here is constant and structured: every voice is carrying its own conversation with its own customer.<\/p><\/div><div class=\"scen_row\"><div class=\"scen_head\"><h4 class=\"scen_name\">Phone calls<\/h4><div class=\"scen_where\">Cars, streets, shops, metro<\/div><\/div><p class=\"scen_text\">Almost no competing speech, by design. This set is the control. The challenge is the audio itself: cabin rumble, crowd chatter and telephony codecs layered on an already degraded signal.<\/p><\/div><\/div>\n<p>There is no shortcut for this. You cannot download a call center. Every recording was made by a real person, in a real room, on a real device, with other people genuinely talking nearby, over a three-month field project run by our QA team.<\/p>\n<h3>Annotations<\/h3>\n<p>Every recording ships with a hand-written transcript and a JSON metadata entry. Transcripts capture speech exactly as spoken, including hesitations, false starts and self-corrections. Partial words like <code>ano.., astonishing<\/code> stay in. Ground truth is what was said, not a cleaned-up version. Every transcript was verified by a human annotator.<\/p>\n<p>Every audio segment carries one of four hand-applied labels:<\/p>\n<div class=\"def_list\"><div class=\"def_row\"><span class=\"def_swatch\" style=\"background:#614efa\"><\/span><span class=\"def_body\"><span class=\"def_term\">primary<\/span><span class=\"def_text\">Mainly the primary voice; some ambient or babble noise may be present<\/span><\/span><\/div><div class=\"def_row\"><span class=\"def_swatch\" style=\"background:#c54600\"><\/span><span class=\"def_body\"><span class=\"def_term\">mix<\/span><span class=\"def_text\">Primary and secondary speakers both audible<\/span><\/span><\/div><div class=\"def_row\"><span class=\"def_swatch\" style=\"background:#c8c7d0\"><\/span><span class=\"def_body\"><span class=\"def_term\">secondary<\/span><span class=\"def_text\">Only the secondary speaker audible<\/span><\/span><\/div><div class=\"def_row\"><span class=\"def_swatch\" style=\"background:#a59afc\"><\/span><span class=\"def_body\"><span class=\"def_term\">noise<\/span><span class=\"def_text\">No speech, only background noise<\/span><\/span><\/div><\/div>\n<p>Segment labels let you score each condition separately instead of scoring the recording as a whole. Each scenario also has a <code>metadata.jsonl<\/code> carrying <code>file_name<\/code>, <code>id<\/code>, <code>speaker_id<\/code>, <code>gender<\/code>, <code>full_transcript<\/code>, <code>segments<\/code>, <code>recording_device<\/code> and <code>environment<\/code>. Phone calls add <code>phone<\/code> and <code>car_model<\/code>.<\/p>\n<h2>What Voice Isolation does to word error rate<\/h2>\n<p>Each of the 265 files was transcribed by eleven speech-to-text configurations, five times over: once on raw audio, and once through each of the four Voice Isolation models. Word error rate is pooled at corpus level, not averaged across scenarios.<\/p>\n<figure class=\"post_figure\"><p class=\"post_figure_title\">Word error rate by scenario<\/p><img src=\"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2026\/09\/wer-by-scenario-2.png\" alt=\"Grouped bar chart of word error rate by scenario, raw audio versus Krisp VI 2.5 Default\" loading=\"lazy\"\/><figcaption class=\"post_figure_caption\"> Where a second voice is present, roughly three quarters of the errors go away. Where it is not, isolation costs a third of a percentage point.                    <\/figcaption><\/figure>\n<p>Two of the three scenarios move a long way. Work, the densest competing-speech set, falls from 31.84% to 6.30%. Call center falls from 23.83% to 6.86%. Pooled across all 265 files, word error rate drops 73%<\/p>\n<p>The third scenario moves the other way, and it is worth its own section.<\/p>\n<h2>Where Voice Isolation makes things worse: clean phone calls<\/h2>\n<p>On phone calls, word error rate rises from <strong>3.48% to 3.91%<\/strong>.<\/p>\n<p>That audio starts clean and narrowband. There is no competing speech to remove and no headroom to gain, so the only thing isolation can do is take something it should have left alone. Every model in the lineup does it. VI 2.5 Balanced does it least, landing at 3.53%, within a rounding error of leaving the file untouched.<\/p>\n<p>At corpus level the effect is small. At file level it is not uniformly small: a handful of phone recordings regress by several points, and one sample goes from 9.42% to 21.65%.<\/p>\n<p>We are publishing this in the table rather than a footnote for two reasons. A vendor that publishes only its wins has told you nothing you can plan around. And more practically, this is the case that decides whether you can leave isolation on for all traffic instead of guessing per call which recordings deserve it. On already-clean phone audio, today, you would be slightly better off without us. Closing that gap is what the next model is aimed at.<\/p>\n<h2>Comparing 11 speech-to-text engines<\/h2>\n<p>We ran eleven configurations across nine engines, streaming and batch, because voice agents use one and analytics pipelines use the other. This is not a leaderboard. We are not ranking engines or claiming one handles secondary voices better than another. Running eleven is how we show the effect is a property of the audio rather than a quirk of one vendor&#8217;s acoustic model.<\/p>\n<p class=\"table_note\">Word error rate by engine, all scenarios pooled (%) \u2014 best isolation model per row highlighted<\/p>\n<div class=\"post_table_wrap\"><table style=\"width: 55.3662%;\" class=\"post_table\">\n<caption class=\"table_sr_caption\">Word error rate by speech-to-text engine, all scenarios pooled, raw audio versus each Krisp Voice Isolation model<\/caption>\n<thead>\n<tr>\n<th style=\"width: 27.1053%;\">Engine<\/th>\n<th class=\"n\" style=\"width: 5.92105%;\">Raw<\/th>\n<th class=\"n\" style=\"width: 15.5263%;\">VI 2.5 Default<\/th>\n<th class=\"n\" style=\"width: 17.5%;\">VI 2.5 Balanced<\/th>\n<th class=\"n\" style=\"width: 11.7105%;\">VI 2.5 Lite<\/th>\n<th class=\"n\" style=\"width: 11.1842%;\">VI 2.5 HD<\/th>\n<th class=\"n\" style=\"width: 8.68421%;\">Change<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr class=\"is_highlighted\">\n<td style=\"width: 27.1053%;\">AssemblyAI Universal-3 Pro<br \/>\n<small>batch<\/small><span class=\"cell_badge\">Largest drop<\/span><\/td>\n<td class=\"n\" style=\"width: 5.92105%;\">30.32<\/td>\n<td class=\"n\" style=\"width: 15.5263%;\"><span class=\"cell_pill\">3.75<\/span><\/td>\n<td class=\"n\" style=\"width: 17.5%;\">3.98<\/td>\n<td class=\"n\" style=\"width: 11.7105%;\">4.98<\/td>\n<td class=\"n\" style=\"width: 11.1842%;\">3.90<\/td>\n<td class=\"n\" style=\"width: 8.68421%;\">\u221288%<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 27.1053%;\">ElevenLabs Scribe v2<br \/>\n<small>streaming<\/small><\/td>\n<td class=\"n\" style=\"width: 5.92105%;\">36.94<\/td>\n<td class=\"n\" style=\"width: 15.5263%;\"><span class=\"cell_pill\">5.52<\/span><\/td>\n<td class=\"n\" style=\"width: 17.5%;\">6.40<\/td>\n<td class=\"n\" style=\"width: 11.7105%;\">7.00<\/td>\n<td class=\"n\" style=\"width: 11.1842%;\">5.86<\/td>\n<td class=\"n\" style=\"width: 8.68421%;\">\u221285%<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 27.1053%;\">Soniox STT v5<br \/>\n<small>streaming<\/small><\/td>\n<td class=\"n\" style=\"width: 5.92105%;\">29.13<\/td>\n<td class=\"n\" style=\"width: 15.5263%;\"><span class=\"cell_pill\">5.17<\/span><\/td>\n<td class=\"n\" style=\"width: 17.5%;\">5.36<\/td>\n<td class=\"n\" style=\"width: 11.7105%;\">6.48<\/td>\n<td class=\"n\" style=\"width: 11.1842%;\">5.44<\/td>\n<td class=\"n\" style=\"width: 8.68421%;\">\u221282%<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 27.1053%;\">AssemblyAI Universal-3 Pro<br \/>\n<small>streaming<\/small><\/td>\n<td class=\"n\" style=\"width: 5.92105%;\">23.88<\/td>\n<td class=\"n\" style=\"width: 15.5263%;\"><span class=\"cell_pill\">5.03<\/span><\/td>\n<td class=\"n\" style=\"width: 17.5%;\">5.12<\/td>\n<td class=\"n\" style=\"width: 11.7105%;\">6.28<\/td>\n<td class=\"n\" style=\"width: 11.1842%;\">5.24<\/td>\n<td class=\"n\" style=\"width: 8.68421%;\">\u221279%<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 27.1053%;\">Parakeet TDT 0.6B v2<br \/>\n<small>batch<\/small><\/td>\n<td class=\"n\" style=\"width: 5.92105%;\">22.88<\/td>\n<td class=\"n\" style=\"width: 15.5263%;\"><span class=\"cell_pill\">5.31<\/span><\/td>\n<td class=\"n\" style=\"width: 17.5%;\">5.31<\/td>\n<td class=\"n\" style=\"width: 11.7105%;\">6.21<\/td>\n<td class=\"n\" style=\"width: 11.1842%;\">5.77<\/td>\n<td class=\"n\" style=\"width: 8.68421%;\">\u221277%<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 27.1053%;\">Deepgram Nova-3<br \/>\n<small>batch<\/small><\/td>\n<td class=\"n\" style=\"width: 5.92105%;\">17.58<\/td>\n<td class=\"n\" style=\"width: 15.5263%;\"><span class=\"cell_pill\">6.05<\/span><\/td>\n<td class=\"n\" style=\"width: 17.5%;\">6.05<\/td>\n<td class=\"n\" style=\"width: 11.7105%;\">7.37<\/td>\n<td class=\"n\" style=\"width: 11.1842%;\">6.40<\/td>\n<td class=\"n\" style=\"width: 8.68421%;\">\u221266%<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 27.1053%;\">Grok STT<br \/>\n<small>streaming<\/small><\/td>\n<td class=\"n\" style=\"width: 5.92105%;\">16.37<\/td>\n<td class=\"n\" style=\"width: 15.5263%;\">5.74<\/td>\n<td class=\"n\" style=\"width: 17.5%;\"><span class=\"cell_pill\">5.67<\/span><\/td>\n<td class=\"n\" style=\"width: 11.7105%;\">7.26<\/td>\n<td class=\"n\" style=\"width: 11.1842%;\">5.85<\/td>\n<td class=\"n\" style=\"width: 8.68421%;\">\u221265%<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 27.1053%;\">Google Chirp 3<br \/>\n<small>streaming<\/small><\/td>\n<td class=\"n\" style=\"width: 5.92105%;\">18.38<\/td>\n<td class=\"n\" style=\"width: 15.5263%;\">6.96<\/td>\n<td class=\"n\" style=\"width: 17.5%;\"><span class=\"cell_pill\">6.81<\/span><\/td>\n<td class=\"n\" style=\"width: 11.7105%;\">8.08<\/td>\n<td class=\"n\" style=\"width: 11.1842%;\">7.31<\/td>\n<td class=\"n\" style=\"width: 8.68421%;\">\u221263%<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 27.1053%;\">Deepgram Nova-3<br \/>\n<small>streaming<\/small><\/td>\n<td class=\"n\" style=\"width: 5.92105%;\">20.40<\/td>\n<td class=\"n\" style=\"width: 15.5263%;\">8.00<\/td>\n<td class=\"n\" style=\"width: 17.5%;\"><span class=\"cell_pill\">7.68<\/span><\/td>\n<td class=\"n\" style=\"width: 11.7105%;\">9.36<\/td>\n<td class=\"n\" style=\"width: 11.1842%;\">8.40<\/td>\n<td class=\"n\" style=\"width: 8.68421%;\">\u221262%<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 27.1053%;\">Cartesia Ink-Whisper<br \/>\n<small>batch<\/small><\/td>\n<td class=\"n\" style=\"width: 5.92105%;\">19.62<\/td>\n<td class=\"n\" style=\"width: 15.5263%;\">8.43<\/td>\n<td class=\"n\" style=\"width: 17.5%;\"><span class=\"cell_pill\">7.53<\/span><\/td>\n<td class=\"n\" style=\"width: 11.7105%;\">8.49<\/td>\n<td class=\"n\" style=\"width: 11.1842%;\">9.77<\/td>\n<td class=\"n\" style=\"width: 8.68421%;\">\u221262%<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 27.1053%;\">Nvidia Nemotron 0.6B<br \/>\n<small>streaming<\/small><\/td>\n<td class=\"n\" style=\"width: 5.92105%;\">20.15<\/td>\n<td class=\"n\" style=\"width: 15.5263%;\">8.69<\/td>\n<td class=\"n\" style=\"width: 17.5%;\"><span class=\"cell_pill\">8.44<\/span><\/td>\n<td class=\"n\" style=\"width: 11.7105%;\">9.59<\/td>\n<td class=\"n\" style=\"width: 11.1842%;\">8.93<\/td>\n<td class=\"n\" style=\"width: 8.68421%;\">\u221258%<\/td>\n<\/tr>\n<\/tbody>\n<\/table><\/div>\n<p class=\"table_source\">All eleven configurations improve. None regresses. Change is the best isolation model against raw audio; negative means word error rate fell.<\/p>\n<p>The more interesting result is not the average. It is what happens to the distance between engines. On raw audio these eleven span seventeen to thirty-seven percent word error rate, a twenty-point gap that would dominate any engine-selection decision made on this audio. After isolation they sit between four and eight.<\/p>\n<figure class=\"post_figure\"><p class=\"post_figure_title\">What isolation does to the gap between engines<\/p><img src=\"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2026\/09\/engine-spread.png\" alt=\"Dumbbell chart showing each speech engine on raw audio and after Krisp Voice Isolation, with the spread between engines narrowing\" loading=\"lazy\"\/><figcaption class=\"post_figure_caption\"> Cleaning the input compresses the field to a quarter of its width. On audio with a second voice in it, most of what an engine comparison measures is how each engine degrades, not how well it transcribes.                    <\/figcaption><\/figure>\n<h2>Choosing between the four Voice Isolation models<\/h2>\n<p>Voice Isolation ships as four models. They differ in how hard they process the primary speaker and how much compute they need, not in what they are trying to do.<\/p>\n<figure class=\"post_figure\"><p class=\"post_figure_title\">Corpus word error rate by model, all 265 files<\/p><img src=\"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2026\/09\/wer-by-model-2.png\" alt=\"Bar chart of corpus word error rate for each Krisp Voice Isolation model across all 265 files\" loading=\"lazy\"\/><figcaption class=\"post_figure_caption\"> Raw audio sits at 23.29%, off the top of this scale. VI 2.5 Default is the recommended model and what a customer gets without changing a setting. On the corpus figure VI 2.5 Balanced is level with it, ahead by 0.02 points.                    <\/figcaption><\/figure>\n<p class=\"table_note\">Corpus word error rate by scenario and model (%) \u2014 best per row highlighted<\/p>\n<div class=\"post_table_wrap\"><table class=\"post_table\">\n<caption class=\"table_sr_caption\">Corpus word error rate by scenario and Voice Isolation model<\/caption>\n<thead>\n<tr>\n<th>Scenario<\/th>\n<th class=\"n\">Raw<\/th>\n<th class=\"n\">VI 2.5 Default<\/th>\n<th class=\"n\">VI 2.5 Balanced<\/th>\n<th class=\"n\">VI 2.5 Lite<\/th>\n<th class=\"n\">VI 2.5 HD<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Work<\/td>\n<td class=\"n\">31.84<\/td>\n<td class=\"n\"><span class=\"cell_pill\">6.30<\/span><\/td>\n<td class=\"n\">6.92<\/td>\n<td class=\"n\">7.43<\/td>\n<td class=\"n\">7.34<\/td>\n<\/tr>\n<tr>\n<td>Call center<\/td>\n<td class=\"n\">23.83<\/td>\n<td class=\"n\">6.86<\/td>\n<td class=\"n\"><span class=\"cell_pill\">6.56<\/span><\/td>\n<td class=\"n\">8.35<\/td>\n<td class=\"n\">6.98<\/td>\n<\/tr>\n<tr>\n<td>Phone calls<\/td>\n<td class=\"n\">3.48<\/td>\n<td class=\"n\">3.91<\/td>\n<td class=\"n\"><span class=\"cell_pill\">3.53<\/span><\/td>\n<td class=\"n\">3.81<\/td>\n<td class=\"n\">3.89<\/td>\n<\/tr>\n<tr class=\"is_highlighted\">\n<td>All 265 files<span class=\"cell_badge\">Pooled<\/span><\/td>\n<td class=\"n\">23.24<\/td>\n<td class=\"n\">6.24<\/td>\n<td class=\"n\"><span class=\"cell_pill\">6.21<\/span><\/td>\n<td class=\"n\">7.37<\/td>\n<td class=\"n\">6.62<\/td>\n<\/tr>\n<\/tbody>\n<\/table><\/div>\n<p>The split across the engine table is almost even: VI 2.5 Default leads on five engines, VI 2.5 Balanced on five, and they tie on one. It is not random. The default wins Work, where competing voices are densest and the primary has to be held intact through overlap. Balanced wins Call center and is materially better on phone calls, where lighter processing costs less on audio that needed less.<\/p>\n<ul>\n<li><b>VI 2.5 Default.<\/b> The recommended model. Strongest where competing voices are densest.<\/li>\n<li><b>VI 2.5 Balanced.<\/b> Lighter processing while the primary speaker talks. More natural voice, a little background may come through.<\/li>\n<li><b>VI 2.5 Lite.<\/b> About a point of word error rate for roughly a third of the compute.<\/li>\n<li><b>VI 2.5 HD.<\/b> For 32 kHz WebRTC and WebSocket streams rather than narrowband telephony.<\/li>\n<\/ul>\n<h3>Perceptual quality (DNSMOS-C)<\/h3>\n<p>Word error rate is what matters to an agent, but isolation should not make a call unpleasant for the humans on it. Scored with DNSMOS-C on segments where the primary speaker is talking, so it reflects residual noise around the target voice rather than silence quality.<\/p>\n<div class=\"post_table_wrap\"><table class=\"post_table\">\n<caption class=\"table_sr_caption\">DNSMOS-C perceptual quality by scenario and Voice Isolation model, 1 to 5, higher is better<\/caption>\n<thead>\n<tr>\n<th>Scenario<\/th>\n<th class=\"n\">Raw<\/th>\n<th class=\"n\">VI 2.5 Default<\/th>\n<th class=\"n\">VI 2.5 Balanced<\/th>\n<th class=\"n\">VI 2.5 Lite<\/th>\n<th class=\"n\">VI 2.5 HD<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Work<\/td>\n<td class=\"n\">3.43<\/td>\n<td class=\"n\"><span class=\"cell_pill\">3.96<\/span><\/td>\n<td class=\"n\">3.78<\/td>\n<td class=\"n\">3.96<\/td>\n<td class=\"n\">3.92<\/td>\n<\/tr>\n<tr>\n<td>Call center<\/td>\n<td class=\"n\">3.65<\/td>\n<td class=\"n\"><span class=\"cell_pill\">4.02<\/span><\/td>\n<td class=\"n\">3.94<\/td>\n<td class=\"n\">4.01<\/td>\n<td class=\"n\">3.97<\/td>\n<\/tr>\n<tr>\n<td>Phone calls<\/td>\n<td class=\"n\">3.11<\/td>\n<td class=\"n\"><span class=\"cell_pill\">3.45<\/span><\/td>\n<td class=\"n\">3.42<\/td>\n<td class=\"n\">3.42<\/td>\n<td class=\"n\">3.22<\/td>\n<\/tr>\n<\/tbody>\n<\/table><\/div>\n<p class=\"table_source\">Mean opinion score, 1 to 5, higher is better. Every model raises the score in every scenario. VI 2.5 Balanced sits slightly lower by design, since it processes the primary voice more lightly.<\/p>\n<h2>What we learned building this: the errors you cannot see<\/h2>\n<p>The result that changed how we build the model did not come from the leaderboard. It came from customer recordings where the transcript was wrong in a way that was hard to catch.<\/p>\n<p>The text was not garbled. There were no invented words. It was missing a clause here and a clause there, inside sentences that still read perfectly well.<\/p>\n<figure class=\"post_quote post_quote--brand\"><blockquote class=\"post_quote_text\"><p>The cause was isolation, and the isolation was ours.<\/p><\/blockquote><\/figure>\n<p>To pull a primary speaker out of overlapping conversation, a model has to remove a great deal of signal, and on the hardest segments it takes some of the primary voice with it. A person hears the result as slightly thin and understands every word, because human listening fills gaps without being asked to. A speech-to-text engine does not. It was trained on natural audio, and heavily isolated audio is not natural: the noise floor sits too low, consonants are attenuated, some frames carry almost nothing. Given a frame it cannot resolve, the engine does not guess. It writes nothing.<\/p>\n<p>So the error arrives as a deletion rather than a substitution, and that distinction is the whole problem. A garbled transcript is loud. The agent asks the caller to repeat themselves, a guardrail fires, someone reading the log catches it in a second. A transcript with a hole in it is silent. It reads clean, and the agent acts on it.<\/p>\n<p>People and machines do not listen the same way. Isolation tuned for the human ear removes whatever a person will not miss. Isolation tuned for the transcript removes only what the engine should not read. Those are different objectives, and the gap between them is measured in deletions.<\/p>\n<p>It is also why this benchmark scores segments separately rather than scoring recordings whole, and why the <code>secondary<\/code> label carries as much weight as the others. A model that correctly transcribes silence and a model that quietly deletes the primary speaker can post the same corpus word error rate.<\/p>\n<h2>How to check us: benchmark methodology<\/h2>\n<p>Word error rate is computed with <code>jiwer<\/code> 4.0.0 using <code>jiwer.process_words()<\/code>, pooled at corpus level. Reference and hypothesis pass through the same three-stage normalization: a structural regex pass that splits postcodes, letter-digit tokens and digit runs; then NVIDIA NeMo Text Processing <a href=\"https:\/\/github.com\/NVIDIA\/NeMo-text-processing\" target=\"_blank\" rel=\"nofollow noopener\">NVIDIA NeMo Text Processing<\/a> for verbalization; then lowercasing, contraction expansion, punctuation stripping and filler removal. Numbers are compared as words, so no engine is penalized for writing <code>1928<\/code> rather than spelling it out.<\/p>\n<p>Perceptual quality uses <a href=\"https:\/\/github.com\/Hope-Liang\/DNSMOS-C\" target=\"_blank\" rel=\"nofollow noopener\">DNSMOS-C<\/a>, reference-free, trained with contrastive learning on the DNSMOS Pro architecture, NISQA checkpoint. Every segment is broken into overlapping 10s windows before scoring. Segments shorter than 10s are looped to fill the window rather than padded with silence, so short segments are never scored on partial or silent audio.<\/p>\n<p>The dataset, the transcripts, the segment labels and every model&#8217;s output on every file are published. So is the harness, built so any isolation model and any engine run through identical code. We hold back a private slice as a hidden test set, so nobody, ourselves included, can tune to the public data. If you reproduce the headline number and get something different, we want to hear about it.<\/p>\n<h2>What comes next<\/h2>\n<p>Two things are open, and neither is rhetorical.<\/p>\n<p>The first is the phone-call case: isolation that knows when there is nothing worth removing. A model as strong as the default on competing voices, as careful as Balanced on clean audio, and better than both everywhere. When that ships, the question of which model to run mostly goes away.<\/p>\n<p>The second is turn detection. Turn-taking now lives inside the speech-to-text models themselves, which has been read as making audio cleanup unnecessary. The opposite is closer to true: background voices are exactly what breaks turn detection, so it remains our problem. We do not yet know what laughter does to turn detection after isolation. That is a separate test, and what it tells us goes into the next model.<\/p>\n<p>Background speech is still one of the open problems in speech processing. We hope the dataset helps the field measure progress against it.<\/p>\n<h2>Run it on your own audio<\/h2>\n<p>You now have our average, our best engine and the condition where we cost more than we return. That is close to everything we can usefully tell you from here, because the only benchmark that decides anything is your own recordings. Send us a sample and we will run all four models against your current pipeline.<\/p>\n<div class=\"btn_set btn_set--left\"><div class=\"button btn--dark\"><a class=\"btn_set_link\" href=\"https:\/\/developers.krisp.ai\/\">Get access<\/a><\/div><div class=\"button btn--outline outline--dark\"><a class=\"btn_set_link\" href=\"https:\/\/krisp.ai\/benchmarks\/voice-isolation-benchmark\/\">Voice isolation Benchmark<\/a><\/div><div class=\"button btn--outline outline--dark\"><a class=\"btn_set_link\" href=\"https:\/\/huggingface.co\/datasets\/Krisp-AI\/VoiceIsolation-Benchmark-Dataset\">HuggingFace Dataset<\/a><\/div><div class=\"button btn--outline outline--dark\"><a class=\"btn_set_link\" href=\"https:\/\/huggingface.co\/spaces\/Krisp-AI\/VoiceIsolation-Benchmark\">Space on HF<\/a><\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Speech recognition has become very good at noise. It has not become good at a second person talking. We recorded 265 real conversations with a competing voice in the room, labeled every segment by hand, and measured what happens to eleven speech-to-text systems with and without Krisp Voice Isolation. Today we are opening the dataset, [&hellip;]<\/p>\n","protected":false},"author":71,"featured_media":23828,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"two_page_speed":[]},"categories":[417,421,1],"tags":[],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.2 (Yoast SEO v23.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Voice Isolation Benchmark: WER Improvs by 73% on background voice cases<\/title>\n<meta name=\"description\" content=\"We benchmarked 11 speech-to-text engines on 265 real recordings with a competing voice in the room. See where voice isolation helps.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Voice Isolation Benchmark: WER Improvs by 73% on background voice cases\" \/>\n<meta property=\"og:description\" content=\"We benchmarked 11 speech-to-text engines on 265 real recordings with a competing voice in the room. See where voice isolation helps.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/\" \/>\n<meta property=\"og:site_name\" content=\"Krisp\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/krispHQ\/\" \/>\n<meta property=\"article:published_time\" content=\"2026-09-23T11:51:49+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-23T15:05:10+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2026\/09\/Benchmark.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1745\" \/>\n\t<meta property=\"og:image:height\" content=\"801\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Krisp Engineering Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@krispHQ\" \/>\n<meta name=\"twitter:site\" content=\"@krispHQ\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/\"},\"author\":{\"name\":\"Krisp Engineering Team\",\"@id\":\"https:\/\/krisp.ai\/blog\/#\/schema\/person\/b23c17f4764a5c0890544bd328000c3c\"},\"headline\":\"STT handles noise now. It still can&#8217;t handle a background voice.\",\"datePublished\":\"2026-09-23T11:51:49+00:00\",\"dateModified\":\"2026-09-23T15:05:10+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/\"},\"wordCount\":2685,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/krisp.ai\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2026\/09\/Benchmark.png\",\"articleSection\":[\"Company\",\"Engineering Blog\",\"Krisp News\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/\",\"url\":\"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/\",\"name\":\"Voice Isolation Benchmark: WER Improvs by 73% on background voice cases\",\"isPartOf\":{\"@id\":\"https:\/\/krisp.ai\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2026\/09\/Benchmark.png\",\"datePublished\":\"2026-09-23T11:51:49+00:00\",\"dateModified\":\"2026-09-23T15:05:10+00:00\",\"description\":\"We benchmarked 11 speech-to-text engines on 265 real recordings with a competing voice in the room. See where voice isolation helps.\",\"breadcrumb\":{\"@id\":\"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/#primaryimage\",\"url\":\"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2026\/09\/Benchmark.png\",\"contentUrl\":\"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2026\/09\/Benchmark.png\",\"width\":1745,\"height\":801},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/krisp.ai\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"STT handles noise now. It still can&#8217;t handle a background voice.\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/krisp.ai\/blog\/#website\",\"url\":\"https:\/\/krisp.ai\/blog\/\",\"name\":\"Krisp\",\"description\":\"Blog\",\"publisher\":{\"@id\":\"https:\/\/krisp.ai\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/krisp.ai\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/krisp.ai\/blog\/#organization\",\"name\":\"Krisp\",\"url\":\"https:\/\/krisp.ai\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/krisp.ai\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2024\/10\/K.png\",\"contentUrl\":\"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2024\/10\/K.png\",\"width\":696,\"height\":696,\"caption\":\"Krisp\"},\"image\":{\"@id\":\"https:\/\/krisp.ai\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/krispHQ\/\",\"https:\/\/x.com\/krispHQ\",\"https:\/\/www.linkedin.com\/company\/krisphq\/\",\"https:\/\/www.youtube.com\/channel\/UCAMZinJdR9P33fZUNpuxXtg\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/krisp.ai\/blog\/#\/schema\/person\/b23c17f4764a5c0890544bd328000c3c\",\"name\":\"Krisp Engineering Team\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/krisp.ai\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2023\/10\/cropped-Favicon-96x96.png\",\"contentUrl\":\"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2023\/10\/cropped-Favicon-96x96.png\",\"caption\":\"Krisp Engineering Team\"},\"url\":\"https:\/\/krisp.ai\/blog\/author\/eng-team\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Voice Isolation Benchmark: WER Improvs by 73% on background voice cases","description":"We benchmarked 11 speech-to-text engines on 265 real recordings with a competing voice in the room. See where voice isolation helps.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/","og_locale":"en_US","og_type":"article","og_title":"Voice Isolation Benchmark: WER Improvs by 73% on background voice cases","og_description":"We benchmarked 11 speech-to-text engines on 265 real recordings with a competing voice in the room. See where voice isolation helps.","og_url":"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/","og_site_name":"Krisp","article_publisher":"https:\/\/www.facebook.com\/krispHQ\/","article_published_time":"2026-09-23T11:51:49+00:00","article_modified_time":"2026-09-23T15:05:10+00:00","og_image":[{"width":1745,"height":801,"url":"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2026\/09\/Benchmark.png","type":"image\/png"}],"author":"Krisp Engineering Team","twitter_card":"summary_large_image","twitter_creator":"@krispHQ","twitter_site":"@krispHQ","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/#article","isPartOf":{"@id":"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/"},"author":{"name":"Krisp Engineering Team","@id":"https:\/\/krisp.ai\/blog\/#\/schema\/person\/b23c17f4764a5c0890544bd328000c3c"},"headline":"STT handles noise now. It still can&#8217;t handle a background voice.","datePublished":"2026-09-23T11:51:49+00:00","dateModified":"2026-09-23T15:05:10+00:00","mainEntityOfPage":{"@id":"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/"},"wordCount":2685,"commentCount":0,"publisher":{"@id":"https:\/\/krisp.ai\/blog\/#organization"},"image":{"@id":"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/#primaryimage"},"thumbnailUrl":"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2026\/09\/Benchmark.png","articleSection":["Company","Engineering Blog","Krisp News"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/","url":"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/","name":"Voice Isolation Benchmark: WER Improvs by 73% on background voice cases","isPartOf":{"@id":"https:\/\/krisp.ai\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/#primaryimage"},"image":{"@id":"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/#primaryimage"},"thumbnailUrl":"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2026\/09\/Benchmark.png","datePublished":"2026-09-23T11:51:49+00:00","dateModified":"2026-09-23T15:05:10+00:00","description":"We benchmarked 11 speech-to-text engines on 265 real recordings with a competing voice in the room. See where voice isolation helps.","breadcrumb":{"@id":"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/#primaryimage","url":"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2026\/09\/Benchmark.png","contentUrl":"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2026\/09\/Benchmark.png","width":1745,"height":801},{"@type":"BreadcrumbList","@id":"https:\/\/krisp.ai\/blog\/voice-isolation-benchmark\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/krisp.ai\/blog\/"},{"@type":"ListItem","position":2,"name":"STT handles noise now. It still can&#8217;t handle a background voice."}]},{"@type":"WebSite","@id":"https:\/\/krisp.ai\/blog\/#website","url":"https:\/\/krisp.ai\/blog\/","name":"Krisp","description":"Blog","publisher":{"@id":"https:\/\/krisp.ai\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/krisp.ai\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/krisp.ai\/blog\/#organization","name":"Krisp","url":"https:\/\/krisp.ai\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/krisp.ai\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2024\/10\/K.png","contentUrl":"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2024\/10\/K.png","width":696,"height":696,"caption":"Krisp"},"image":{"@id":"https:\/\/krisp.ai\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/krispHQ\/","https:\/\/x.com\/krispHQ","https:\/\/www.linkedin.com\/company\/krisphq\/","https:\/\/www.youtube.com\/channel\/UCAMZinJdR9P33fZUNpuxXtg"]},{"@type":"Person","@id":"https:\/\/krisp.ai\/blog\/#\/schema\/person\/b23c17f4764a5c0890544bd328000c3c","name":"Krisp Engineering Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/krisp.ai\/blog\/#\/schema\/person\/image\/","url":"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2023\/10\/cropped-Favicon-96x96.png","contentUrl":"https:\/\/krisp.ai\/blog\/wp-content\/uploads\/2023\/10\/cropped-Favicon-96x96.png","caption":"Krisp Engineering Team"},"url":"https:\/\/krisp.ai\/blog\/author\/eng-team\/"}]}},"primary_category":"Company","_links":{"self":[{"href":"https:\/\/krisp.ai\/blog\/wp-json\/wp\/v2\/posts\/23784"}],"collection":[{"href":"https:\/\/krisp.ai\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/krisp.ai\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/krisp.ai\/blog\/wp-json\/wp\/v2\/users\/71"}],"replies":[{"embeddable":true,"href":"https:\/\/krisp.ai\/blog\/wp-json\/wp\/v2\/comments?post=23784"}],"version-history":[{"count":37,"href":"https:\/\/krisp.ai\/blog\/wp-json\/wp\/v2\/posts\/23784\/revisions"}],"predecessor-version":[{"id":23846,"href":"https:\/\/krisp.ai\/blog\/wp-json\/wp\/v2\/posts\/23784\/revisions\/23846"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/krisp.ai\/blog\/wp-json\/wp\/v2\/media\/23828"}],"wp:attachment":[{"href":"https:\/\/krisp.ai\/blog\/wp-json\/wp\/v2\/media?parent=23784"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/krisp.ai\/blog\/wp-json\/wp\/v2\/categories?post=23784"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/krisp.ai\/blog\/wp-json\/wp\/v2\/tags?post=23784"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}