diff --git a/include/http_utility.hpp b/include/http_utility.hpp
index 46742a0..b7844ba 100644
--- a/include/http_utility.hpp
+++ b/include/http_utility.hpp
@@ -47,8 +47,15 @@
 
 inline bool isOctetAccepted(std::string_view header)
 {
-    for (const std::string& encoding : parseAccept(header))
+    for (std::string_view encoding : parseAccept(header))
     {
+        // ignore any q-factor weighting (;q=)
+        std::size_t separator = encoding.find(";q=");
+
+        if (separator != std::string_view::npos)
+        {
+            encoding = encoding.substr(0, separator);
+        }
         if (encoding == "*/*" || encoding == "application/octet-stream")
         {
             return true;
diff --git a/include/ut/http_utility_test.cpp b/include/ut/http_utility_test.cpp
index e412e17..1a33fd8 100644
--- a/include/ut/http_utility_test.cpp
+++ b/include/ut/http_utility_test.cpp
@@ -27,6 +27,16 @@
     EXPECT_TRUE(isOctetAccepted("*/*, application/octet-stream"));
 }
 
+TEST(IsOctetAccepted, ContainsAnyMimeTypeReturnsTrue)
+{
+    EXPECT_TRUE(http_helpers::isOctetAccepted("text/html, */*"));
+}
+
+TEST(IsOctetAccepted, ContainsQFactorWeightingReturnsTrue)
+{
+    EXPECT_TRUE(http_helpers::isOctetAccepted("text/html, */*;q=0.8"));
+}
+
 TEST(IsOctetAccepted, NoOctetReturnsFalse)
 {
     EXPECT_FALSE(isOctetAccepted("text/html, application/json"));
@@ -34,4 +44,4 @@
 }
 
 } // namespace
-} // namespace http_helpers
\ No newline at end of file
+} // namespace http_helpers
