Resend vs Postmark : quel service choisir pour ton SaaS ?
Resend convient si tu veux intégrer une API récente, envoyer jusqu’à 3 000 courriels par mois sans frais et commencer à 20 $ par mois pour 50 000. Postmark est à considérer si les flux distincts par type de message et un historique configurable comptent davantage ; son offre Basic commence à 15 $ par mois pour 10 000 courriels.
Tu compares ces deux services parce que ton produit doit envoyer des liens de connexion, des reçus, des alertes ou des messages de cycle de vie. Le choix ne se résume pas à une promesse de délivrabilité : regarde comment tu vas appeler l’API depuis ton application, isoler les messages critiques, diagnostiquer un envoi et faire évoluer le volume. Resend met en avant une expérience orientée développeurs et une intégration avec React Email. Postmark organise les envois autour de flux de messages, ce qui aide à séparer les courriels transactionnels des autres catégories.
Pour une petite équipe qui veut un chemin simple depuis le code jusqu’à l’envoi, Resend est un bon point de départ : son plan gratuit inclut 3 000 courriels par mois, avec une limite de 100 par jour. Si tu veux répartir les types de messages dans des flux Postmark et comparer des niveaux de rétention, Postmark mérite un essai sur ton cas réel. Les prix ci-dessous sont mensuels et indexés sur le nombre de courriels inclus.
Tarifs et limites à comparer
À 10 000 messages mensuels, Postmark Basic coûte 15 $ par mois, tandis que son plan gratuit ne sert qu’à tester avec 100 messages par mois et n’autorise pas de dépassement. Resend n’a pas de palier payant à 10 000 dans sa grille de base : son plan Pro affiche 20 $ par mois pour 50 000. Ce seuil d’entrée plus haut peut être intéressant si ton volume approche déjà cette capacité, mais il ne faut pas le comparer comme si les deux montants couvraient le même quota.
| Offre | Resend | Postmark |
|---|---|---|
| Gratuit | Free : 0 $, 3 000 courriels par mois, maximum 100 par jour | Free : 0 $, 100 courriels par mois, sans dépassement |
| Premier forfait payant | Pro : 20 $ par mois pour 50 000 ; 0,90 $ par tranche supplémentaire de 1 000 | Basic : 15 $ par mois à partir de 10 000 ; 1,80 $ par tranche supplémentaire de 1 000 |
| Niveaux supérieurs | Scale : 90 $ par mois pour 100 000 | Pro : 16,50 $ et Platform : 18 $ par mois, chacun à partir de 10 000 |
| Repère à 50 000 | Pro : 20 $ par mois pour 50 000 | Basic : 55 $, Pro : 60,50 $, Platform : 66 $ par mois pour 50 000 |
| Journaux | Vérifie la durée applicable à ton compte et ton besoin d’export | Basic : 45 jours par défaut ; les niveaux supérieurs proposent une rétention configurable jusqu’à 365 jours |
Les prix de Resend sont affichés sur sa page des tarifs, et ceux de Postmark sur sa grille tarifaire. Pour Postmark, Basic, Pro et Platform ne sont pas simplement trois volumes différents : les fonctions incluses et le tarif au-delà du quota varient. Pour Resend, le palier Scale à 90 $ inclut 100 000 envois par mois ; le service affiche aussi une IP dédiée en option sur Scale, avec conditions d’éligibilité. Les deux fournisseurs ont un mode gratuit, mais seule une mesure de ta consommation quotidienne permet de voir si la limite journalière de Resend est gênante ou si le quota mensuel d’essai de Postmark suffit.
API, modèles et diagnostic
Les deux services sont conçus pour des envois déclenchés par ton application. Dans les deux cas, crée un client serveur qui reçoit les événements de ton produit, construit le message puis appelle l’API avec une clé conservée côté serveur. Les SDK réduisent le code répétitif, mais teste aussi la gestion des erreurs, les tentatives de renvoi et la déduplication : un événement de paiement rejoué ne doit pas expédier deux reçus identiques.
Resend se distingue par React Email, qui permet de composer des modèles en composants React et de les rendre avant l’envoi. C’est pratique si tes développeurs maintiennent déjà l’interface du produit en React. Postmark fournit des modèles et des flux distincts, avec des étiquettes qui permettent de séparer, par exemple, les confirmations de compte des reçus. Cette organisation devient utile quand plusieurs équipes possèdent des messages différents ou quand tu veux repérer quel groupe d’envois génère des erreurs.
Ne néglige pas les journaux. Pour un courriel de réinitialisation absent, l’équipe de support doit pouvoir retrouver l’identifiant de l’événement, l’heure, le destinataire masqué dans les outils internes, l’état d’envoi et le motif d’échec. Postmark indique 45 jours de rétention par défaut sur Basic et une durée configurable jusqu’à 365 jours sur les niveaux supérieurs. La conservation peut avoir un coût additionnel selon l’option choisie. Pour Resend, vérifie dans l’offre envisagée la période réellement disponible et les possibilités d’export, puis conserve dans ton application les identifiants nécessaires aux enquêtes sans dupliquer le contenu sensible.
Flux, webhooks et séparation des messages
Les flux de messages de Postmark donnent un mécanisme explicite pour séparer des catégories d’envoi. Tu peux garder les messages transactionnels dans leur flux et réserver un autre flux aux courriels qui ne doivent pas partager le même suivi opérationnel. Resend permet également de gérer des domaines et des envois depuis son API, mais l’organisation par flux nommés de Postmark correspond davantage aux équipes qui veulent définir une frontière claire entre familles de messages.
Dans les deux produits, vérifie les événements de retour disponibles et configure les webhooks vers une route dédiée de ton application. Enregistre le type d’événement, son identifiant et son horodatage, puis rends ton traitement idempotent : le même événement reçu plusieurs fois ne doit pas déclencher des actions répétées. Ajoute des alertes pour les refus permanents et les erreurs d’authentification. Un webhook peut te signaler une livraison ou un rejet, mais il ne remplace pas la consultation des journaux lorsque tu enquêtes sur un message précis.
Domaine d’envoi, authentification et IP
Quel que soit ton choix, prévois un sous-domaine d’envoi dédié, par exemple mail.tondomaine.fr, plutôt que de modifier à l’aveugle les enregistrements du domaine principal. Les instructions de configuration te demanderont des enregistrements DNS. Publie SPF et DKIM comme indiqué, puis mets en place DMARC avec une politique adaptée à ton domaine. Contrôle la propagation et les résultats avant de déplacer les courriels de production. Si tu utilises déjà un autre expéditeur, vérifie les règles SPF existantes pour éviter plusieurs enregistrements SPF concurrents.
Une IP dédiée n’est pas automatiquement un avantage pour un SaaS qui envoie peu. Il faut un volume régulier et une exploitation attentive pour construire et préserver sa réputation. Postmark indique que ses IP dédiées gérées commencent à 50 $ par mois et sont réservées aux plans Pro ou supérieurs à partir de 300 000 messages mensuels. Resend affiche une option d’IP dédiée sur Scale, avec une condition de volume quotidien. Compare ces seuils à ton trafic avant de budgéter l’option ; une IP partagée bien gérée peut être plus adaptée à une jeune application.
Lequel choisir selon ton équipe ?
- Tu lances un SaaS avec moins de 100 courriels critiques par jour : commence par Resend Free si sa limite quotidienne couvre les essais et les premiers utilisateurs. Le gratuit de Postmark, limité à 100 par mois, est surtout un espace de test très restreint.
- Tu envoies déjà près de 10 000 messages mensuels : compare Postmark Basic à 15 $ pour ce volume avec Resend Pro à 20 $ pour 50 000. Le premier colle à un besoin modeste ; le second offre une marge de croissance immédiate si tes projections sont fiables.
- Tu veux coder tes courriels avec des composants React : examine Resend et React Email, puis teste le rendu sur tes modèles essentiels, notamment les reçus et les messages de connexion.
- Plusieurs équipes doivent isoler les catégories et conserver davantage d’historique : évalue les flux Postmark et le palier adapté à la rétention dont ton support a besoin. Chiffre aussi le coût à 50 000 envois : 55 $ en Basic, 60,50 $ en Pro ou 66 $ en Platform.
Migration sans interrompre les messages
- Cartographie les envois. Liste chaque déclencheur, son modèle, sa langue, son importance, son destinataire et le service propriétaire. Distingue notamment connexion, facture, changement d’abonnement et notification produit.
- Prépare le DNS. Ajoute les valeurs SPF et DKIM indiquées par le nouveau fournisseur sur le sous-domaine choisi. Publie DMARC de façon contrôlée et attends la propagation avant les essais de production.
- Recrée les modèles et le suivi. Transpose le contenu et les variables, puis adapte les appels API, les identifiants de message et les consommateurs de webhooks. Teste les liens, les accents, le rendu mobile et les en-têtes.
- Bascule progressivement. Commence avec un message peu risqué ou un environnement de préproduction. Ensuite, déplace une famille à la fois, surveille les journaux et les événements de retour, et garde un moyen de revenir à l’ancien expéditeur pendant la transition.
Voir aussi
Questions fréquentes
Resend ou Postmark pour les courriels de connexion ?
Les deux peuvent envoyer des messages transactionnels depuis ton application. Choisis selon le modèle, la logique de renvoi, les journaux et le quota requis ; teste le lien de connexion expiré et les demandes répétées avant lancement.
Les plans gratuits permettent-ils un vrai lancement ?
Resend Free comprend 3 000 envois mensuels avec une limite de 100 par jour. Postmark Free comprend 100 envois par mois et aucun dépassement. Pour un produit en production, vérifie aussi les conditions propres au compte et passe à un forfait payant lorsque ces plafonds ne conviennent plus.
Dois-je acheter une IP dédiée ?
Pas nécessairement. Une IP dédiée suppose un volume régulier et un suivi de réputation. Postmark annonce un seuil de 300 000 messages par mois pour ses IP gérées, disponibles à partir de 50 $ mensuels sur Pro ou supérieur. Resend réserve son option à Scale et à des conditions de volume.
Puis-je migrer sans changer mes modèles ?
Tu peux conserver le contenu, mais les formats de variables, les API, les identifiants de modèles et les webhooks demandent souvent des adaptations. Teste chaque modèle et chaque événement avant de déplacer progressivement le trafic.