diff --git a/pythainlp/util/thai.py b/pythainlp/util/thai.py
index 1a78dc32..b141b260 100644
--- a/pythainlp/util/thai.py
+++ b/pythainlp/util/thai.py
@@ -127,7 +127,7 @@ def countthai(text: str, ignore_chars: str = _DEFAULT_IGNORE_CHARS) -> float:
         # output: 0.0
     """
     if not text or not isinstance(text, str):
-        return 0
+        return 0.0
 
     if not ignore_chars:
         ignore_chars = ""
@@ -143,4 +143,7 @@ def countthai(text: str, ignore_chars: str = _DEFAULT_IGNORE_CHARS) -> float:
 
     num_count = len(text) - num_ignore
 
+    if num_count == 0:
+        return 0.0
+
     return (num_thai / num_count) * 100

diff --git a/tests/test_util.py b/tests/test_util.py
index 34d2491e..958fa201 100644
--- a/tests/test_util.py
+++ b/tests/test_util.py
@@ -340,8 +340,11 @@ class TestUtilPackage(unittest.TestCase):
     # ### pythainlp.util.thai
 
     def test_countthai(self):
-        self.assertEqual(countthai(""), 0)
+        self.assertEqual(countthai(""), 0.0)
+        self.assertEqual(countthai("123"), 0.0)
+        self.assertEqual(countthai("1 2 3"), 0.0)
         self.assertEqual(countthai("ประเทศไทย"), 100.0)
+        self.assertEqual(countthai("โรค COVID-19"), 37.5)
         self.assertEqual(countthai("(กกต.)", ".()"), 100.0)
         self.assertEqual(countthai("(กกต.)", None), 50.0)
 

countthai not cover all cases
**Describe the bug**
Input countthai('123') or countthai(' ') or countthai('1 2 3 4') create error instead of zero? 

**To Reproduce**
Steps to reproduce the behavior:
1. from pythainlp.util import countthai
2. input either '123' or ' '

**Expected behavior**
it should return zero?
tests/test_util.py::TestUtilPackage::test_countthai
tests/test_util.py::TestUtilPackage::test_collate tests/test_util.py::TestUtilPackage::test_date tests/test_util.py::TestUtilPackage::test_is_native_thai tests/test_util.py::TestUtilPackage::test_isthai tests/test_util.py::TestUtilPackage::test_isthaichar tests/test_util.py::TestUtilPackage::test_keyboard tests/test_util.py::TestUtilPackage::test_keywords tests/test_util.py::TestUtilPackage::test_normalize tests/test_util.py::TestUtilPackage::test_number tests/test_util.py::TestUtilPackage::test_rank tests/test_util.py::TestUtilPackage::test_thai_day2datetime tests/test_util.py::TestUtilPackage::test_thai_strftime tests/test_util.py::TestUtilPackage::test_thai_time tests/test_util.py::TestUtilPackage::test_thai_time2time tests/test_util.py::TestUtilPackage::test_trie