diff --git a/XMonad/Util/ExtensibleConf.hs b/XMonad/Util/ExtensibleConf.hs
index e51b9c47..e64832e0 100644
--- a/XMonad/Util/ExtensibleConf.hs
+++ b/XMonad/Util/ExtensibleConf.hs
@@ -117,7 +117,7 @@ once :: forall a l. (Semigroup a, Typeable a)
      => (XConfig l -> XConfig l) -- ^ 'XConfig' modification done only once
      -> a -- ^ configuration to add
      -> XConfig l -> XConfig l
-once f x c = add x $ maybe f (const id) (lookup @a c) c
+once f x c = maybe f (const id) (lookup @a c) $ add x c
 
 -- | Config-time: Applicative (monadic) variant of 'once', useful if the
 -- 'XConfig' modification needs to do some 'IO' (e.g. create an
@@ -126,4 +126,4 @@ onceM :: forall a l m. (Applicative m, Semigroup a, Typeable a)
       => (XConfig l -> m (XConfig l)) -- ^ 'XConfig' modification done only once
       -> a -- ^ configuration to add
       -> XConfig l -> m (XConfig l)
-onceM f x c = add x <$> maybe f (const pure) (lookup @a c) c
+onceM f x c = maybe f (const pure) (lookup @a c) $ add x c