diff --git a/src/analysis.c b/src/analysis.c
index 6078dbe..f4160e4 100644
--- a/src/analysis.c
+++ b/src/analysis.c
@@ -663,8 +663,10 @@
     }
     /* Special case for the last two bands, for which we don't have spectrum but only
        the energy above 12 kHz. */
-    {
+    if (tonal->Fs == 48000) {
+       float ratio;
        float E = hp_ener*(1.f/(240*240));
+       ratio = tonal->prev_bandwidth==20 ? 0.03f : 0.07f;
 #ifdef FIXED_POINT
        /* silk_resampler_down2_hp() shifted right by an extra 8 bits. */
        E *= 256.f*(1.f/Q15ONE)*(1.f/Q15ONE);
@@ -674,7 +676,10 @@
        E = MAX32(E, tonal->meanE[b]);
        /* Use a simple follower with 13 dB/Bark slope for spreading function */
        bandwidth_mask = MAX32(.05f*bandwidth_mask, E);
-       if (E>.1*bandwidth_mask && E*1e9f > maxE && E > noise_floor*160)
+       if (E>ratio*bandwidth_mask && E*1e9f > maxE && E > noise_floor*160)
+          bandwidth = 20;
+       /* This detector is unreliable, so if the bandwidth is close to SWB, assume it's FB. */
+       if (bandwidth >= 17)
           bandwidth = 20;
     }
     if (tonal->count<=2)
@@ -896,6 +901,7 @@
 #endif
 
     info->bandwidth = bandwidth;
+    tonal->prev_bandwidth = bandwidth;
     /*printf("%d %d\n", info->bandwidth, info->opus_bandwidth);*/
     info->noisiness = frame_noisiness;
     info->valid = 1;
diff --git a/src/analysis.h b/src/analysis.h
index b94a0c9..cac51df 100644
--- a/src/analysis.h
+++ b/src/analysis.h
@@ -55,6 +55,7 @@
    int   mem_fill;                      /* number of usable samples in the buffer */
    float prev_band_tonality[NB_TBANDS];
    float prev_tonality;
+   int prev_bandwidth;
    float E[NB_FRAMES][NB_TBANDS];
    float logE[NB_FRAMES][NB_TBANDS];
    float lowE[NB_TBANDS];
