I find the following instance very convenient:

------------------------------------------------------------------------
import Data.Monoid
import Control.Applicative

instance Monoid a => Monoid (ZipList a) where
  mempty = pure mempty
  mappend = liftA2 mappend
------------------------------------------------------------------------

Any reason why it is not in the standard library?

Thanks,
Vladimir