diff --git a/Data/GroupedList.hs b/Data/GroupedList.hs
--- a/Data/GroupedList.hs
+++ b/Data/GroupedList.hs
@@ -20,6 +20,7 @@
   , fromGroup
     -- * Info
   , length
+  , groupCount
     -- * Indexing
   , index
   , adjust
@@ -170,6 +171,11 @@
 -- | Grouped list with no elements.
 empty :: Grouped a
 empty = Grouped S.empty
+
+-- | Return the number of groups in a grouped list. See 'Group'.
+--   It should give the same result as @length . groupedGroups@.
+groupCount :: Grouped a -> Int
+groupCount (Grouped xs) = length xs
 
 #if MIN_VERSION_base(4,7,0)
 -- | Method 'fromList' doesn't work for infinite lists.
diff --git a/grouped-list.cabal b/grouped-list.cabal
--- a/grouped-list.cabal
+++ b/grouped-list.cabal
@@ -1,5 +1,5 @@
 name:                grouped-list
-version:             0.2.2.1
+version:             0.2.3.0
 synopsis:            Grouped lists. Equal consecutive elements are grouped.
 description:
   Grouped lists work like regular lists, except for two conditions:
@@ -28,7 +28,7 @@
   default-language: Haskell2010
   exposed-modules: Data.GroupedList
   build-depends:
-      base >= 4.8 && < 4.13
+      base >= 4.8 && < 4.17
     , containers
     , pointed
     , deepseq
