diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,7 @@
+## 1.4.8
+
+* Added Yesod.Form.I18n.Spanish
+
 ## 1.4.6
 
 * Functor instances for Option/OptionList
diff --git a/Yesod/Form/I18n/Spanish.hs b/Yesod/Form/I18n/Spanish.hs
new file mode 100644
--- /dev/null
+++ b/Yesod/Form/I18n/Spanish.hs
@@ -0,0 +1,27 @@
+{-# LANGUAGE OverloadedStrings #-}
+
+module Yesod.Form.I18n.Spanish where
+
+import Yesod.Form.Types (FormMessage (..))
+import Data.Monoid (mappend)
+import Data.Text (Text)
+
+spanishFormMessage :: FormMessage -> Text
+spanishFormMessage (MsgInvalidInteger t) = "Número entero inválido: " `mappend` t
+spanishFormMessage (MsgInvalidNumber t) = "Número inválido: " `mappend` t
+spanishFormMessage (MsgInvalidEntry t) = "Entrada inválida: " `mappend` t
+spanishFormMessage MsgInvalidTimeFormat = "Hora inválida, debe tener el formato HH:MM[:SS]"
+spanishFormMessage MsgInvalidDay = "Fecha inválida, debe tener el formato AAAA-MM-DD"
+spanishFormMessage (MsgInvalidUrl t) = "URL inválida: " `mappend` t
+spanishFormMessage (MsgInvalidEmail t) = "Dirección de correo electrónico inválida: " `mappend` t
+spanishFormMessage (MsgInvalidHour t) = "Hora inválida: " `mappend` t
+spanishFormMessage (MsgInvalidMinute t) = "Minuto inválido: " `mappend` t
+spanishFormMessage (MsgInvalidSecond t) = "Segundo inválido: " `mappend` t
+spanishFormMessage MsgCsrfWarning = "Como protección contra ataques CSRF, confirme su envío por favor."
+spanishFormMessage MsgValueRequired = "Se requiere un valor"
+spanishFormMessage (MsgInputNotFound t) = "Entrada no encontrada: " `mappend` t
+spanishFormMessage MsgSelectNone = "<Ninguno>"
+spanishFormMessage (MsgInvalidBool t) = "Booleano inválido: " `mappend` t
+spanishFormMessage MsgBoolYes = "Sí"
+spanishFormMessage MsgBoolNo = "No"
+spanishFormMessage MsgDelete = "¿Eliminar?"
diff --git a/yesod-form.cabal b/yesod-form.cabal
--- a/yesod-form.cabal
+++ b/yesod-form.cabal
@@ -1,5 +1,5 @@
 name:            yesod-form
-version:         1.4.7.1
+version:         1.4.8
 license:         MIT
 license-file:    LICENSE
 author:          Michael Snoyman <michael@snoyman.com>
@@ -67,6 +67,7 @@
                      Yesod.Form.I18n.Czech
                      Yesod.Form.I18n.Russian
                      Yesod.Form.I18n.Dutch
+                     Yesod.Form.I18n.Spanish
                      -- FIXME Yesod.Helpers.Crud
     ghc-options:     -Wall
 
