diff --git a/youtube_dl/postprocessor/embedthumbnail.py b/youtube_dl/postprocessor/embedthumbnail.py
index a5939a7d3..74928be55 100644
--- a/youtube_dl/postprocessor/embedthumbnail.py
+++ b/youtube_dl/postprocessor/embedthumbnail.py
@@ -41,8 +41,19 @@ class EmbedThumbnailPP(FFmpegPostProcessor):
                 'Skipping embedding the thumbnail because the file is missing.')
             return [], info
 
-        if not os.path.splitext(encodeFilename(thumbnail_filename))[1].lower() in ['.jpg', '.png']:
-            jpg_thumbnail_filename = thumbnail_filename + ".jpg"
+        #Check for mislabeled webp file
+        with open(encodeFilename(thumbnail_filename), "rb") as f:
+            b = f.read(16)
+            if b'\x57\x45\x42\x50' in b: #Binary for WEBP
+                [thumbnail_filename_path, thumbnail_filename_extension] = os.path.splitext(thumbnail_filename)
+                if not thumbnail_filename_extension == ".webp":
+                    webp_thumbnail_filename = thumbnail_filename_path + ".webp"
+                    os.rename(thumbnail_filename, webp_thumbnail_filename)
+                    thumbnail_filename = webp_thumbnail_filename
+
+        #If not a jpg or png thumbnail, convert it to jpg using ffmpeg
+        if not os.path.splitext(thumbnail_filename)[1].lower() in ['.jpg', '.png']:
+            jpg_thumbnail_filename = os.path.splitext(thumbnail_filename)[0] + ".jpg"
 
             self._downloader.to_screen('[ffmpeg] Converting thumbnail "%s" to JPEG' % thumbnail_filename)