diff --git a/library/TextBuilderDev.hs b/library/TextBuilderDev.hs
--- a/library/TextBuilderDev.hs
+++ b/library/TextBuilderDev.hs
@@ -88,6 +88,7 @@
 import qualified Data.Text.Lazy as TextLazy
 import qualified Data.Text.Lazy.Builder as TextLazyBuilder
 import qualified DeferredFolds.Unfoldr as Unfoldr
+import qualified LawfulConversions
 import qualified Test.QuickCheck.Gen as QcGen
 import qualified TextBuilderDev.Allocator as Allocator
 import TextBuilderDev.Prelude hiding (intercalate, length, null)
@@ -130,28 +131,6 @@
   toTextBuilder = id
   fromTextBuilder = id
 
-instance IsomorphicToTextBuilder Text where
-  toTextBuilder = text
-  fromTextBuilder = buildText
-
-instance IsomorphicToTextBuilder String where
-  toTextBuilder = fromString
-  fromTextBuilder = Text.unpack . buildText
-
-instance IsomorphicToTextBuilder TextLazy.Text where
-  toTextBuilder = lazyText
-  fromTextBuilder = TextLazy.fromStrict . buildText
-
-instance IsomorphicToTextBuilder TextLazyBuilder.Builder where
-  toTextBuilder = text . TextLazy.toStrict . TextLazyBuilder.toLazyText
-  fromTextBuilder = TextLazyBuilder.fromText . buildText
-
-#if MIN_VERSION_text(2,0,2)
-instance IsomorphicToTextBuilder TextEncoding.StrictBuilder where
-  toTextBuilder = toTextBuilder . TextEncoding.strictBuilderToText
-  fromTextBuilder = TextEncoding.textToStrictBuilder . fromTextBuilder
-#endif
-
 -- * --
 
 -- |
@@ -218,33 +197,153 @@
         intervalInSeconds @Double <$> arbitrary
       ]
 
+-- ** Strict Text
+
+instance IsomorphicToTextBuilder Text where
+  toTextBuilder = text
+  fromTextBuilder = buildText
+
 instance IsomorphicTo TextBuilder Text where
   to = TextBuilderDev.text
 
 instance IsomorphicTo Text TextBuilder where
   to = TextBuilderDev.buildText
 
+instance LawfulConversions.IsSome TextBuilder Text where
+  to = TextBuilderDev.text
+
+instance LawfulConversions.IsSome Text TextBuilder where
+  to = TextBuilderDev.buildText
+
+instance LawfulConversions.IsMany TextBuilder Text
+
+instance LawfulConversions.IsMany Text TextBuilder
+
+instance LawfulConversions.Is TextBuilder Text
+
+instance LawfulConversions.Is Text TextBuilder
+
+-- ** String
+
+instance IsomorphicToTextBuilder String where
+  toTextBuilder = fromString
+  fromTextBuilder = Text.unpack . buildText
+
+instance LawfulConversions.IsSome String TextBuilder where
+  to = Text.unpack . buildText
+  maybeFrom = fmap text . LawfulConversions.maybeFrom
+
+instance LawfulConversions.IsMany String TextBuilder where
+  from = text . LawfulConversions.from
+
+-- ** Lazy Text
+
+instance IsomorphicToTextBuilder TextLazy.Text where
+  toTextBuilder = lazyText
+  fromTextBuilder = TextLazy.fromStrict . buildText
+
 instance IsomorphicTo TextBuilder TextLazy.Text where
   to = TextBuilderDev.lazyText
 
 instance IsomorphicTo TextLazy.Text TextBuilder where
   to = to . to @Text
 
+instance LawfulConversions.IsSome TextBuilder TextLazy.Text where
+  to = lazyText
+
+instance LawfulConversions.IsSome TextLazy.Text TextBuilder where
+  to = TextLazy.fromStrict . buildText
+
+instance LawfulConversions.IsMany TextBuilder TextLazy.Text
+
+instance LawfulConversions.IsMany TextLazy.Text TextBuilder
+
+instance LawfulConversions.Is TextBuilder TextLazy.Text
+
+instance LawfulConversions.Is TextLazy.Text TextBuilder
+
+-- ** Lazy Text Builder
+
+instance IsomorphicToTextBuilder TextLazyBuilder.Builder where
+  toTextBuilder = text . TextLazy.toStrict . TextLazyBuilder.toLazyText
+  fromTextBuilder = TextLazyBuilder.fromText . buildText
+
 instance IsomorphicTo TextBuilder TextLazyBuilder.Builder where
   to = to . to @TextLazy.Text
 
 instance IsomorphicTo TextLazyBuilder.Builder TextBuilder where
   to = to . to @Text
 
-#if MIN_VERSION_text(2,0,2)
+instance LawfulConversions.IsSome TextBuilder TextLazyBuilder.Builder where
+  to = text . TextLazy.toStrict . TextLazyBuilder.toLazyText
 
+instance LawfulConversions.IsSome TextLazyBuilder.Builder TextBuilder where
+  to = TextLazyBuilder.fromText . buildText
+
+instance LawfulConversions.IsMany TextBuilder TextLazyBuilder.Builder
+
+instance LawfulConversions.IsMany TextLazyBuilder.Builder TextBuilder
+
+instance LawfulConversions.Is TextBuilder TextLazyBuilder.Builder
+
+instance LawfulConversions.Is TextLazyBuilder.Builder TextBuilder
+
+-- ** Strict Text Builder
+
+#if MIN_VERSION_text(2,1,2)
+
+instance IsomorphicToTextBuilder TextEncoding.StrictTextBuilder where
+  toTextBuilder = toTextBuilder . TextEncoding.strictBuilderToText
+  fromTextBuilder = TextEncoding.textToStrictBuilder . fromTextBuilder
+
+instance IsomorphicTo TextBuilder TextEncoding.StrictTextBuilder where
+  to = to . TextEncoding.strictBuilderToText
+
+instance IsomorphicTo TextEncoding.StrictTextBuilder TextBuilder where
+  to = TextEncoding.textToStrictBuilder . to
+
+instance LawfulConversions.IsSome TextBuilder TextEncoding.StrictTextBuilder where
+  to = toTextBuilder . TextEncoding.strictBuilderToText
+
+instance LawfulConversions.IsSome TextEncoding.StrictTextBuilder TextBuilder where
+  to = TextEncoding.textToStrictBuilder . fromTextBuilder
+
+instance LawfulConversions.IsMany TextBuilder TextEncoding.StrictTextBuilder
+
+instance LawfulConversions.IsMany TextEncoding.StrictTextBuilder TextBuilder
+
+instance LawfulConversions.Is TextBuilder TextEncoding.StrictTextBuilder
+
+instance LawfulConversions.Is TextEncoding.StrictTextBuilder TextBuilder
+
+#elif MIN_VERSION_text(2,0,2)
+
+instance IsomorphicToTextBuilder TextEncoding.StrictBuilder where
+  toTextBuilder = toTextBuilder . TextEncoding.strictBuilderToText
+  fromTextBuilder = TextEncoding.textToStrictBuilder . fromTextBuilder
+
 instance IsomorphicTo TextBuilder TextEncoding.StrictBuilder where
   to = to . TextEncoding.strictBuilderToText
 
 instance IsomorphicTo TextEncoding.StrictBuilder TextBuilder where
   to = TextEncoding.textToStrictBuilder . to
 
+instance LawfulConversions.IsSome TextBuilder TextEncoding.StrictBuilder where
+  to = toTextBuilder . TextEncoding.strictBuilderToText
+
+instance LawfulConversions.IsSome TextEncoding.StrictBuilder TextBuilder where
+  to = TextEncoding.textToStrictBuilder . fromTextBuilder
+
+instance LawfulConversions.IsMany TextBuilder TextEncoding.StrictBuilder
+
+instance LawfulConversions.IsMany TextEncoding.StrictBuilder TextBuilder
+
+instance LawfulConversions.Is TextBuilder TextEncoding.StrictBuilder
+
+instance LawfulConversions.Is TextEncoding.StrictBuilder TextBuilder
+
 #endif
+
 -- * Accessors
 
 -- | Get the amount of characters.
diff --git a/test/Main.hs b/test/Main.hs
--- a/test/Main.hs
+++ b/test/Main.hs
@@ -5,12 +5,14 @@
 import qualified Data.Text as Text
 import qualified Data.Text.Lazy as TextLazy
 import qualified Data.Text.Lazy.Builder as TextLazyBuilder
+import qualified LawfulConversions
 import Numeric.Compat
 import Test.QuickCheck.Classes
 import Test.QuickCheck.Instances ()
 import Test.Tasty
 import Test.Tasty.HUnit
 import Test.Tasty.QuickCheck hiding ((.&.))
+import TextBuilderDev (TextBuilder)
 import qualified TextBuilderDev as B
 import qualified TextBuilderDev.TastyExtras as Extras
 import Prelude hiding (choose, showBin)
@@ -194,7 +196,13 @@
         testLaws $ showLaws (Proxy @B.TextBuilder),
         testLaws $ eqLaws (Proxy @B.TextBuilder),
         testLaws $ semigroupLaws (Proxy @B.TextBuilder),
-        testLaws $ monoidLaws (Proxy @B.TextBuilder)
+        testLaws $ monoidLaws (Proxy @B.TextBuilder),
+        testGroup "LawfulConversions integration"
+          $ [ testProperties "Is Text" $ LawfulConversions.isProperties @Text @TextBuilder Proxy Proxy,
+              testProperties "Is Lazy Text" $ LawfulConversions.isProperties @TextLazy.Text @TextBuilder Proxy Proxy,
+              testProperties "Is Lazy Text Builder" $ LawfulConversions.isProperties @TextLazyBuilder.Builder @TextBuilder Proxy Proxy,
+              testProperties "IsMany String" $ LawfulConversions.isManyProperties @String @TextBuilder Proxy Proxy
+            ]
       ]
   where
     bigTest = 10000
diff --git a/text-builder-dev.cabal b/text-builder-dev.cabal
--- a/text-builder-dev.cabal
+++ b/text-builder-dev.cabal
@@ -1,6 +1,6 @@
 cabal-version: 3.0
 name: text-builder-dev
-version: 0.3.8
+version: 0.3.9
 category: Text, Builders
 synopsis: Edge of developments for "text-builder"
 description:
@@ -82,6 +82,7 @@
     bytestring >=0.10 && <0.13,
     deferred-folds >=0.9.10.1 && <0.10,
     isomorphism-class >=0.3 && <0.4,
+    lawful-conversions >=0.1.4 && <0.2,
     quickcheck-instances >=0.3.28 && <0.4,
     split >=0.2.3.4 && <0.3,
     text >=1.0 && <3,
@@ -96,6 +97,7 @@
   other-modules: TextBuilderDev.TastyExtras
   build-depends:
     base-compat >=0.13,
+    lawful-conversions >=0.1.4 && <0.2,
     quickcheck-classes >=0.6.5 && <0.7,
     quickcheck-instances >=0.3.28 && <0.4,
     rerebase <2,
