diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,7 @@
+## 0.12.4
+
+* Expose `traverse_` and `for_`
+
 ## 0.12.3
 
 * mono-traversable-0.9.3 support
diff --git a/ClassyPrelude.hs b/ClassyPrelude.hs
--- a/ClassyPrelude.hs
+++ b/ClassyPrelude.hs
@@ -301,6 +301,12 @@
 mapM_ :: (Monad m, MonoFoldable c) => (Element c -> m ()) -> c -> m ()
 mapM_ = omapM_
 
+traverse_ :: (Applicative f, MonoFoldable c) => (Element c -> f ()) -> c -> f ()
+traverse_ = otraverse_
+
+for_ :: (Applicative f, MonoFoldable c) => c -> (Element c -> f ()) -> f ()
+for_ = ofor_
+
 forM_ :: (Monad m, MonoFoldable c) => c -> (Element c -> m ()) -> m ()
 forM_ = oforM_
 
diff --git a/classy-prelude.cabal b/classy-prelude.cabal
--- a/classy-prelude.cabal
+++ b/classy-prelude.cabal
@@ -1,5 +1,5 @@
 name:                classy-prelude
-version:             0.12.3
+version:             0.12.4
 synopsis:            A typeclass-based Prelude.
 description:         Modern best practices without name collisions. No partial functions are exposed, but modern data structures are, without requiring import lists. Qualified modules also are not needed: instead operations are based on type-classes from the mono-traversable package.
 
