diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,10 @@
 # Revision history for sayable
 
+## 1.2.3.1 -- 2023-11-12
+
+* Reduce maximum constraint tuple arity generated by `sayableSubConstraints` to
+  60.
+
 ## 1.2.3.0 -- 2023-10-22
 
 * Added `sayableSubConstraints` for specifying data sub-element `Sayable`
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -70,7 +70,7 @@
 the current context and type of information being processed.  Most of this
 documentation will use the preferred `Symbol` kind for the `saytag`.
 
-== Individual Arguments
+## Individual Arguments
 
 The arguments passed to the sayable should be instances of the `Sayable` class.
 There are a number of standard instances of `Sayable`, but an instance can be
@@ -113,7 +113,7 @@
 Note that there are several pre-declared `Sayable` instances for common
 datatypes for convenience.
 
-== Operators
+## Operators
 
 In the logging lines above, there are several operators used, each of which
 starts with the `&` character.  These are described in detail in the 'Helper
diff --git a/Text/Sayable.hs b/Text/Sayable.hs
--- a/Text/Sayable.hs
+++ b/Text/Sayable.hs
@@ -1244,12 +1244,12 @@
   -- Make a tuple of constraints for all the sub-element types collected in tc.
   -- Note that tc may contain duplicates, but it is fine to express duplicate
   -- constraints, so don't bother trying to filter down to only unique target
-  -- types here.  However, the maximum tuple arity is 64, so create nested tuples
+  -- types here.  However, the maximum tuple arity is 62, so create nested tuples
   -- if necessary to stay under that limit.
 
   let mkConstrTpl elem0 lst =
         if null lst then elem0
-        else let (lst1, lst2) = splitAt 63 lst
+        else let (lst1, lst2) = splitAt 60 lst
                  l1len = length lst1
                  base = AppT (TupleT (l1len + 1)) elem0
                  next tc' p' = AppT p' (classPred ''Sayable [v, tc'])
diff --git a/sayable.cabal b/sayable.cabal
--- a/sayable.cabal
+++ b/sayable.cabal
@@ -1,6 +1,6 @@
 cabal-version:      2.4
 name:               sayable
-version:            1.2.3.0
+version:            1.2.3.1
 synopsis: Construction of context-adjusted pretty output
 description:
    .
