Proč formulář neodesílá e-maily: kompletní diagnostika

Praktický návod, jak postupně zkontrolovat kontaktní formulář, WordPress, hosting, SMTP, spam, DNS a doručování e-mailů.

Formulář na webu může vypadat funkčně, ale e-maily se přesto nemusí doručovat. Problém často není v samotném formuláři, ale v nastavení odesílání, hostingu, SMTP, e-mailové schránce, DNS záznamech nebo spamové ochraně. Klienti většinou zjistí chybu až ve chvíli, kdy si všimnou, že nepřicházejí poptávky. Proto je potřeba formulář netestovat jen vizuálně, ale projít celou cestu od kliknutí na tlačítko až po doručení zprávy do schránky.

Formulář se neodešle vůbec

Pokud formulář po kliknutí na tlačítko neudělá nic, problém je pravděpodobně přímo na stránce. Může jít o chybu ve formuláři, konflikt pluginů, nefunkční JavaScript, špatně nastavenou validaci nebo blokování bezpečnostním prvkem.

Typické projevy:

  • tlačítko nereaguje,
  • formulář se načítá donekonečna,
  • objeví se obecná chyba,
  • stránka po odeslání spadne,
  • pole se zvýrazní, ale není jasné proč,
  • formulář nefunguje jen na mobilu,
  • formulář nefunguje jen v některém prohlížeči.

Nejdřív je potřeba zkontrolovat, jestli jsou správně nastavená povinná pole, e-mailové pole, souhlas se zpracováním údajů a antispamová ochrana. U WordPressu se často vyplatí dočasně vypnout cache, zkontrolovat konzoli prohlížeče a ověřit, jestli formulářový plugin není v konfliktu s jiným pluginem.

Možná příčina Co zkontrolovat
chyba ve formuláři povinná pole, validace, nastavení odeslání
konflikt pluginů formulář po aktualizaci přestal fungovat
cache formulář používá starou nebo rozbitou verzi skriptu
reCAPTCHA / antispam špatně nastavené klíče nebo blokace
JavaScript chyba tlačítko nereaguje nebo se formulář neodešle
mobilní verze formulář se špatně ovládá nebo nezobrazuje

Pokud se formulář neodešle vůbec, nemá smysl hned řešit spam nebo DNS. E-mail se v takovém případě často ani nevytvoří.

Formulář se odešle, ale e-mail nedorazí

Pokud web zobrazí potvrzení o odeslání, ale e-mail nedorazí, problém je pravděpodobně v doručování. Formulář může data správně přijmout, ale server nedokáže e-mail spolehlivě odeslat nebo cílová schránka zprávu odmítne.

Tady je důležité rozlišit dvě věci:

Stav Co to znamená
formulář se neodešle problém je na úrovni webu nebo formuláře
formulář se odešle, ale e-mail nepřijde problém je v odesílání nebo doručování

U WordPress webů se e-maily často odesílají přes funkci serveru, která nemusí být spolehlivá. Některé hostingy ji omezují, některé zprávy projdou jen někdy a některé e-mailové služby je rovnou označí jako nedůvěryhodné.

Typické příčiny:

  • web odesílá e-mail bez SMTP,
  • adresa odesílatele neodpovídá doméně,
  • chybí SPF, DKIM nebo DMARC,
  • hosting omezuje odesílání,
  • zprávy padají do spamu,
  • příjemce zprávy odmítá,
  • formulář má špatně nastavené pole „From“,
  • schránka je plná nebo neexistuje.

V této fázi je dobré otestovat formulář na více e-mailových adres. Pokud zpráva dorazí na Gmail, ale ne na firemní e-mail, problém může být na straně cílové schránky nebo DNS. Pokud nedorazí nikam, problém bude spíš v odesílání z webu.

Nejčastější chyba ve WordPressu: chybí SMTP

U WordPress webů je nejčastější problém chybějící nebo špatně nastavené SMTP. Web se snaží odesílat e-maily přímo ze serveru, ale příjemce jim nemusí věřit.

SMTP znamená, že web odesílá zprávy přes ověřenou e-mailovou schránku nebo e-mailovou službu. Díky tomu má zpráva větší šanci projít přes spamové filtry.

Bez SMTP se může stát, že:

  • e-maily nedorazí vůbec,
  • dorazí jen některým příjemcům,
  • padají do spamu,
  • jsou označené jako podezřelé,
  • formulář funguje nepravidelně,
  • po změně hostingu přestane doručování fungovat.

U WordPressu se SMTP obvykle řeší pomocí pluginu a napojení na e-mailovou schránku nebo externí službu. Nestačí plugin jen nainstalovat. Musí se správně nastavit server, port, šifrování, přihlašovací údaje a odesílací adresa.

Nastavení Co musí sedět
SMTP server podle poskytovatele e-mailu
port typicky podle šifrování
šifrování SSL nebo TLS podle služby
uživatelské jméno často celá e-mailová adresa
heslo běžné heslo nebo aplikační heslo
odesílatel adresa na stejné doméně jako web
testovací e-mail musí reálně dorazit

Pokud web běží na WordPressu a formulář je důležitý pro poptávky, SMTP by nemělo být volitelný doplněk. Je to základní technické nastavení.

Pokud si nejste jistí nastavením SMTP, může pomoct technická podpora a úpravy webu, protože chyba často není vidět přímo v administraci formuláře.

Špatně nastavený odesílatel

Častá chyba je špatné pole „From“ ve formuláři. Formulář se snaží odeslat e-mail jako zákazník, například klient@gmail.com, i když web běží na jiné doméně. To může vypadat logicky, ale pro doručování je to problém.

Správnější nastavení bývá:

Pole Doporučené nastavení
From / Odesílatel e-mail na vlastní doméně, například web@mojedomena.cz
To / Příjemce vaše cílová schránka, například info@mojedomena.cz
Reply-To e-mail vyplněný návštěvníkem
Subject jasný předmět, například „Nová poptávka z webu“

Formulář by neměl předstírat, že e-mail odeslal návštěvník ze své osobní adresy. Web má zprávu odeslat ze své vlastní domény a e-mail návštěvníka použít pro odpověď.

Špatně:

From: klient@gmail.com

Lépe:

From: web@mojedomena.cz
Reply-To: klient@gmail.com

Tato drobnost často rozhoduje o tom, jestli zpráva dorazí, nebo skončí jako podezřelá.

E-maily padají do spamu

Pokud e-maily z formuláře padají do spamu, formulář technicky funguje, ale doručování není důvěryhodné. Spamové filtry hodnotí odesílatele, doménu, obsah zprávy, odkazy, technické záznamy i chování serveru.

Časté důvody:

  • chybí SMTP,
  • chybí SPF záznam,
  • chybí DKIM podpis,
  • chybí DMARC politika,
  • odesílací adresa neodpovídá doméně,
  • zpráva má podezřelý obsah,
  • v e-mailu je příliš mnoho odkazů,
  • server má špatnou reputaci,
  • příjemce má přísné spamové filtry.

U formulářů se často řeší jen to, jestli zpráva „někam dorazila“. To nestačí. Je potřeba zkontrolovat i spam, hromadnou poštu, karanténu a logy e-mailové služby.

Problém Dopad
chybí SPF příjemce neví, jestli server smí posílat za doménu
chybí DKIM zpráva není podepsaná doménou
chybí DMARC není jasné, co dělat s podezřelou zprávou
špatný From zpráva vypadá jako podvrh
podezřelý obsah vyšší riziko spamu

SPF, DKIM a DMARC nejsou marketingové detaily. Jsou to technické záznamy, které pomáhají e-mailovým službám vyhodnotit, jestli je zpráva důvěryhodná.

Problém může být v DNS záznamech

DNS záznamy určují, jak doména pracuje s webem a e-mailem. Pokud jsou špatně nastavené, web může fungovat, ale e-mailové doručování může selhávat.

U formulářů se nejčastěji kontroluje:

  • SPF,
  • DKIM,
  • DMARC,
  • MX záznamy,
  • případně CNAME nebo TXT záznamy podle e-mailové služby.

Typická situace: web běží na jednom hostingu, e-mail na Google Workspace nebo Microsoft 365 a doména u jiného registrátora. Pokud se DNS nastaví jen částečně, web může být online, ale e-maily z formuláře se budou chovat nespolehlivě.

Záznam K čemu slouží
MX určuje, kam chodí e-maily pro doménu
SPF říká, které servery smí odesílat za doménu
DKIM podepisuje zprávu a potvrzuje její původ
DMARC určuje pravidla pro podezřelé zprávy
CNAME / TXT používají se pro ověření služeb a napojení

DNS není vhodné nastavovat naslepo. Špatná úprava může rozbít e-mail, web nebo obojí. Před změnami je potřeba vědět, kde běží web, kde je e-mail a kdo spravuje doménu.

Hosting může odesílání blokovat nebo omezovat

Některé hostingy omezují odesílání e-mailů z webu kvůli spamu a bezpečnosti. To je běžné. Pro kontaktní formulář to ale znamená, že bez správného nastavení nemusí zprávy odcházet spolehlivě.

Hosting může omezovat:

  • počet e-mailů za hodinu,
  • odesílání přes PHP mail,
  • odesílání z neověřené adresy,
  • podezřelé přílohy,
  • hromadné zprávy,
  • formuláře bez antispamu.

Pro běžný kontaktní formulář by limit většinou neměl být problém. Problém vzniká, když web odesílá zprávy špatným způsobem nebo když formulář začne zneužívat spamový robot.

Pokud hosting hlásí chyby odesílání, je potřeba zkontrolovat logy, SMTP a zabezpečení formuláře. Nestačí jen změnit e-mail příjemce.

Formulář blokuje antispam nebo bezpečnostní plugin

Někdy formulář neodesílá e-maily proto, že je blokovaný antispamem, reCAPTCHA, bezpečnostním pluginem nebo firewallem. Web se chrání před spamem, ale zároveň omylem blokuje reálné návštěvníky.

Typické projevy:

  • formulář nejde odeslat,
  • stále hlásí chybu ověření,
  • nefunguje jen na mobilu,
  • nefunguje jen některým lidem,
  • zpráva se neuloží ani neodešle,
  • po kliknutí se objeví chyba bezpečnosti.

Zkontrolovat má smysl:

  • reCAPTCHA klíče,
  • typ reCAPTCHA,
  • nastavení formulářového pluginu,
  • bezpečnostní plugin,
  • firewall na hostingu,
  • blokované země nebo IP adresy,
  • cache a minifikaci skriptů.

Antispam je nutný, ale nesmí zničit použitelnost formuláře. Pokud je ochrana příliš agresivní, může blokovat i skutečné poptávky.

Chybí uložení zpráv do administrace

Další problém je, že web zprávy nikam neukládá. Pokud se e-mail nedoručí, poptávka je ztracená. To je zbytečné riziko.

U důležitých poptávkových formulářů je vhodné, aby se zprávy ukládaly také do administrace webu nebo do externí služby. E-mail pak není jediná kopie.

Varianta Výhoda
pouze e-mail jednoduché, ale rizikové
e-mail + uložení ve WordPressu lepší kontrola ztracených zpráv
e-mail + CRM vhodné pro větší objem poptávek
e-mail + automatické potvrzení klientovi návštěvník ví, že zpráva odešla

Pokud se formulář používá pro obchodní poptávky, ztracené zprávy mohou znamenat reálnou ztrátu zakázek. Uložení zpráv je jednoduchá pojistka.

Automatická odpověď zákazníkovi nechodí

Formulář může posílat zprávu vám, ale automatická odpověď zákazníkovi nemusí chodit. I to je problém, protože návštěvník neví, jestli se jeho zpráva odeslala.

Automatická odpověď by měla být jednoduchá:

  • potvrdit přijetí zprávy,
  • říct, kdy může čekat odpověď,
  • uvést kontaktní e-mail,
  • nepůsobit jako spam,
  • neobsahovat příliš mnoho odkazů.

Příklad:

„Děkuji za zprávu. Poptávku jsem přijala a ozvu se vám co nejdříve. Pokud chcete něco doplnit, můžete odpovědět přímo na tento e-mail.“

U automatických odpovědí je potřeba hlídat stejné věci jako u běžného formuláře: SMTP, From, Reply-To, SPF, DKIM a spam.

Jak formulář správně otestovat

Formulář nestačí otestovat jedním kliknutím. Je potřeba ověřit celou cestu zprávy.

Základní test:

  1. Odeslat formulář z počítače.
  2. Odeslat formulář z mobilu.
  3. Otestovat více e-mailových adres.
  4. Zkontrolovat spam a hromadnou poštu.
  5. Ověřit, jestli dorazí zpráva správci webu.
  6. Ověřit, jestli dorazí potvrzení zákazníkovi.
  7. Zkontrolovat, jestli se zpráva ukládá v administraci.
  8. Zkontrolovat, jestli funguje Reply-To.
  9. Ověřit, že zpráva obsahuje všechna pole.
  10. Zkontrolovat logy SMTP nebo formuláře.

Testovací zpráva by neměla být jen „test“. Lepší je vyplnit formulář podobně jako reálný klient: jméno, e-mail, telefon, konkrétní popis a případně odkaz.

Pokud test projde na jedné adrese, ještě to neznamená, že je všechno v pořádku. Doručování se může lišit podle příjemce.

Diagnostická tabulka

Při hledání chyby je důležité postupovat podle příznaku. Jinak se zbytečně řeší DNS, když problém je ve formuláři, nebo se mění plugin, když problém je v e-mailové schránce.

Příznak Pravděpodobná příčina Co zkontrolovat
formulář nereaguje JavaScript, plugin, cache konzole, cache, konflikty pluginů
formulář hlásí chybu validace, reCAPTCHA, antispam povinná pole, klíče reCAPTCHA
potvrzení se zobrazí, ale e-mail nepřijde doručování SMTP, spam, logy
e-mail padá do spamu slabá důvěryhodnost zprávy SPF, DKIM, DMARC, From
dorazí jen na některé adresy filtr příjemce test více schránek
nejde odpovědět klientovi špatné Reply-To nastavení hlaviček e-mailu
zpráva neobsahuje všechna pole šablona e-mailu nastavení těla zprávy
formulář funguje jen někdy hosting, limity, spam logy, SMTP, bezpečnost
nechodí potvrzení klientovi druhá e-mailová šablona automatická odpověď
po aktualizaci přestal fungovat konflikt verze pluginů aktualizace, kompatibilita

Tato tabulka neřeší všechny možné případy, ale pomáhá zúžit problém. Bez toho se diagnostika mění v hádání.

Kdy problém neřešit jen výměnou pluginu

Výměna formulářového pluginu není vždy správné řešení. Pokud je problém v SMTP, DNS, odesílací adrese nebo spamu, nový plugin bude mít stejný problém.

Plugin má smysl měnit, pokud:

  • současný plugin není aktualizovaný,
  • má technické chyby,
  • neukládá zprávy,
  • špatně se nastavuje,
  • neumožňuje správné Reply-To,
  • nefunguje s aktuální verzí WordPressu,
  • způsobuje konflikty.

Plugin nemá smysl měnit, pokud:

  • chybí SMTP,
  • je špatně nastavené DNS,
  • e-maily blokuje hosting,
  • zprávy padají do spamu,
  • schránka příjemce odmítá zprávy,
  • problém je v cache nebo bezpečnostním pluginu.

Nejdřív se musí určit příčina. Teprve potom má smysl měnit nástroj.

Závěr

Formulář nemusí odesílat e-maily kvůli chybě ve formuláři, WordPressu, SMTP, hostingu, DNS, spamové ochraně nebo cílové schránce. Proto nestačí zkontrolovat jen to, jestli je formulář vidět na stránce.

Nejčastější chyba je spoléhat na to, že formulář funguje, protože po odeslání ukáže zelené potvrzení. To ale neznamená, že e-mail skutečně dorazil a že na něj můžete odpovědět.

Pokud formulář neodesílá e-maily nebo si nejste jistí, jestli poptávky opravdu chodí, pošlete odkaz na web přes nezávaznou poptávku. Dá se zkontrolovat formulář, SMTP, spam, DNS záznamy, mobilní verze i technické nastavení webu.

Nejnovější příspěvky

FAQ

Proč formulář na webu neodesílá e-maily?

Nejčastěji kvůli chybě ve formuláři, chybějícímu SMTP, špatnému odesílateli, spamovým filtrům, DNS záznamům nebo omezení hostingu. Je potřeba zjistit, jestli se formulář neodešle vůbec, nebo se odešle, ale e-mail nedorazí.

Co je SMTP a proč ho formulář potřebuje?

SMTP je způsob, jak web odesílá e-maily přes ověřenou schránku nebo e-mailovou službu. Bez SMTP se zprávy z WordPressu často doručují nespolehlivě nebo padají do spamu.

Proč e-maily z formuláře padají do spamu?

Často kvůli chybějícím SPF, DKIM nebo DMARC záznamům, špatně nastavenému odesílateli, podezřelému obsahu zprávy nebo serveru s horší reputací. Problém může být také v tom, že web odesílá e-mail jako cizí adresa.

Jak poznám, že formulář opravdu funguje?

Otestujte ho z počítače i mobilu, na více e-mailových adres, zkontrolujte spam, ověřte Reply-To, automatickou odpověď a případné uložení zprávy v administraci. Jedno úspěšné odeslání nestačí.

Mám vyměnit formulářový plugin?

Jen pokud je problém opravdu v pluginu. Pokud chybí SMTP nebo DNS záznamy, výměna pluginu nepomůže. Nejdřív je potřeba zjistit skutečnou příčinu.