todas las guías

// cómo solucionarlo

Gmail SMTP "535-5.7.8 Username and Password not accepted" (y 534-5.7.9): cómo solucionarlo

¿El inicio de sesión SMTP de Gmail falla con 535-5.7.8 o 534-5.7.9 "Application-specific password required"? Usa una contraseña de aplicación u OAuth.

Qué significa

Tu aplicación, web, impresora o servidor de correo ha intentado iniciar sesión en el servidor SMTP de Gmail (smtp.gmail.com) y Google ha rechazado el inicio de sesión. No se ha enviado ningún email. Las dos respuestas más habituales son:

535-5.7.8 Username and Password not accepted. For more information, go to
535 5.7.8  https://support.google.com/mail/?p=BadCredentials
534-5.7.9 Application-specific password required. For more information, go to
534 5.7.9  https://support.google.com/mail/?p=InvalidSecondFactor

535-5.7.8 significa que se ha rechazado el par usuario y contraseña. 534-5.7.9 es más concreto: la cuenta usa la verificación en dos pasos, así que Google no acepta la contraseña normal de la cuenta por SMTP y quiere una contraseña de aplicación. Una tercera variante, 534-5.7.14 "Please log in through your web browser", significa que Google ha bloqueado el inicio de sesión por sospechoso hasta que inicies sesión desde un navegador.

Por qué ocurre

Google ya no acepta la contraseña normal de la cuenta para SMTP, IMAP o POP desde aplicaciones de terceros (las llamadas "aplicaciones menos seguras"). Esto se desactivó para las cuentas personales de Gmail en 2022 y para todas las cuentas de Google Workspace el 14 de marzo de 2025. Solo siguen funcionando dos métodos:

  • OAuth 2.0 (inicias sesión con Google y la aplicación usa un token). Es lo que recomienda Google.
  • Contraseñas de aplicación: una contraseña de 16 caracteres generada para una aplicación. Solo existen en cuentas con la verificación en dos pasos activada.

Así que las causas habituales son:

  • Has escrito tu contraseña normal de Gmail en la aplicación (534-5.7.9 si la verificación en dos pasos está activada, 535-5.7.8 si no).
  • La contraseña de aplicación se ha revocado. Cambiar la contraseña de tu cuenta de Google revoca todas las contraseñas de aplicación.
  • El usuario es incorrecto: debe ser la dirección completa, por ejemplo you@gmail.com o you@yourdomain.com.
  • Espacios o una errata al pegar la contraseña de aplicación, o una contraseña antigua que la aplicación sigue teniendo guardada.
  • Las contraseñas de aplicación no están disponibles para la cuenta: sin verificación en dos pasos, con la Protección Avanzada activada o por una política del administrador de Google Workspace que no las permite.

Cómo comprobarlo

  1. Inicia sesión en myaccount.google.com, abre Seguridad y comprueba si la verificación en dos pasos está activada y si se ofrecen contraseñas de aplicación.
  2. Prueba el inicio de sesión desde un terminal con swaks (sustituye los valores y usa la contraseña de aplicación):
    swaks --server smtp.gmail.com:587 --tls \
      --auth LOGIN --auth-user you@gmail.com --auth-password 'abcdabcdabcdabcd' \
      --from you@gmail.com --to you@gmail.com
    Una respuesta 235 2.7.0 Accepted significa que las credenciales funcionan y que el problema está en la configuración de tu aplicación.
  3. Cuando el envío funcione, manda una prueba a la dirección única de la página de inicio de Delivmail y revisa SPF, DKIM y DMARC para tu dirección From.

Cómo solucionarlo

Opción 1: usa OAuth 2.0 (lo mejor)

Si tu software ofrece "Iniciar sesión con Google" o una opción OAuth para Gmail (la mayoría de los clientes de correo, muchos plugins SMTP de WordPress, nodemailer, PHPMailer), úsala. Creas unas credenciales OAuth en un proyecto de Google Cloud y la aplicación envía con un token. No se guarda ninguna contraseña y sigue funcionando después de un cambio de contraseña.

Opción 2: usa una contraseña de aplicación

  1. Activa la verificación en dos pasos en la cuenta de Google.
  2. Crea una contraseña de aplicación en la configuración de tu cuenta de Google (busca "Contraseñas de aplicación" o "App passwords" en la barra de búsqueda de la cuenta). Ponle un nombre como "Web".
  3. Pega los 16 caracteres en tu aplicación, sin espacios, como contraseña SMTP. Deja la dirección completa como usuario.

Ejemplo con nodemailer:

const transporter = nodemailer.createTransport({
  host: 'smtp.gmail.com',
  port: 465,
  secure: true,          // or port 587 with secure: false (STARTTLS)
  auth: { user: 'you@gmail.com', pass: process.env.GMAIL_APP_PASSWORD }
});

En las webs PHP, los mismos valores van en PHPMailer; los demás errores de inicio de sesión ahí se tratan en PHPMailer "SMTP Error: Could not authenticate". Las impresoras y escáneres se tratan en escanear a email con Office 365 o Gmail.

Google Workspace: plantéate el relay SMTP

Para un dispositivo o servidor que no puede usar OAuth y no debe guardar la contraseña de un usuario, un administrador de Workspace puede usar en su lugar el servicio de relay SMTP (smtp-relay.gmail.com) con autenticación por IP. Sus propios errores se tratan en relay SMTP de Google Workspace "550 5.7.0 Mail relay denied".

534-5.7.14

Inicia sesión en la cuenta desde un navegador, a ser posible desde la misma red, confirma cualquier alerta de seguridad ("Sí, he sido yo") y vuelve a intentarlo. Si sigue ocurriendo, pasa a OAuth o a una contraseña de aplicación.

Recuerda que las cuentas de Gmail tienen límites de envío diarios; el envío masivo a través de smtp.gmail.com termina en "550 5.4.5 Daily user sending limit exceeded".

Comprueba que está solucionado

Envía un mensaje desde la aplicación a la dirección única de la página de inicio de Delivmail. Si llega, el inicio de sesión funciona. Lee el informe: cuando envías a través de Gmail con tu propio dominio, DKIM debería ir firmado por tu dominio (configurado en la consola de administración de Workspace), y SPF y DMARC deberían superarse. Después vuelve a intentar el envío original.

Comprueba que está solucionado

Un cambio de DNS puede tardar de unos minutos a unas horas. Después, envía un nuevo email de prueba o vuelve a escanear tu dominio.

Guías relacionadas