diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c
index 650e39bef00529445855e638aa69cb7bf3b21fbc..b7b270031fb3cae74c3f8deb3d3f82369b856288 100644
--- a/vp9/encoder/vp9_encodeframe.c
+++ b/vp9/encoder/vp9_encodeframe.c
@@ -1292,7 +1292,9 @@ static void encode_frame_internal(VP9_COMP *cpi) {
   vp9_zero(cpi->mb_mv_ref_count);
 #endif
 
-  // force lossless mode when Q0 is selected
+  // force lossless mode
+  if (cm->base_qindex <= 4)
+    cm->base_qindex = 0;
   cpi->mb.e_mbd.lossless = (cm->base_qindex == 0 &&
                             cm->y1dc_delta_q == 0 &&
                             cm->uvdc_delta_q == 0 &&