diff --git a/ascii.cabal b/ascii.cabal
--- a/ascii.cabal
+++ b/ascii.cabal
@@ -1,7 +1,7 @@
 cabal-version: 3.0
 
 name: ascii
-version: 1.5.1.0
+version: 1.5.2.0
 synopsis: The ASCII character set and encoding
 category: Data, Text
 
diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,3 +1,7 @@
+### 1.5.2.0 (2023-01-25)
+
+New functions: `asciiByteStringToText` and `asciiByteStringToTextLazy`
+
 ### 1.5.1.0 (2023-01-06)
 
 Raise `ascii-superset` version to `1.2.5`. This adds a new instance:
diff --git a/library/ASCII.hs b/library/ASCII.hs
--- a/library/ASCII.hs
+++ b/library/ASCII.hs
@@ -75,6 +75,8 @@
     charListToText, textToCharListMaybe, textToCharListUnsafe,
     {- ** @ASCII.Char@ ↔ @ByteString@ -} {- $byteStringConversions -}
     charListToByteString, byteStringToCharListMaybe, byteStringToCharListUnsafe,
+    {- ** @ASCII ByteString@ -> @Text@ -}
+    asciiByteStringToText, asciiByteStringToTextLazy,
 
     {- * Monomorphic conversions between ASCII supersets -} {- $monoSupersetConversions -}
     {- ** @ByteString@ ↔ @String@ -}
@@ -152,9 +154,13 @@
 import qualified ASCII.Superset
 
 import qualified Data.ByteString as BS
+import qualified Data.ByteString.Lazy as LBS
 import qualified Data.Char as Unicode
 import qualified Data.String as Unicode
 import qualified Data.Text as Text
+import qualified Data.Text.Encoding as Text
+import qualified Data.Text.Lazy as LText
+import qualified Data.Text.Lazy.Encoding as LText
 
 {- $char
 
@@ -456,6 +462,12 @@
 
 byteStringToCharListUnsafe :: BS.ByteString -> [Char]
 byteStringToCharListUnsafe = ASCII.Superset.toCharListUnsafe
+
+asciiByteStringToText :: ASCII BS.ByteString -> Text.Text
+asciiByteStringToText = Text.decodeASCII . lift
+
+asciiByteStringToTextLazy :: ASCII LBS.ByteString -> LText.Text
+asciiByteStringToTextLazy = LText.decodeASCII . lift
 
 {- $refinement
 
