If transport tests work but forms do not log, make sure Route ExpressionEngine email through Mailroom is enabled and Diagnostics shows the email hook passing.
If the default transport dropdown is empty, enable at least one transport on the Transports screen.
If SMTP rejects the sender, align the From address with the authenticated SMTP user or an approved alias.
If Microsoft Graph fails with an auth error, recheck tenant ID, client ID, client secret, app permissions, and admin consent.
If Google fails with unauthorized_client or invalid_grant, recheck domain-wide delegation, the numeric Client ID, the Gmail scope, and the delegated sender mailbox.
If Google says the private key cannot be parsed, paste the full JSON private_key value, not private_key_id.
Use Diagnostics after every deployment. It is faster than guessing, and less likely to make you question your career choices.