I need help configuring Mailgun’s email delivery service for my Ghost blog. I’m looking for a straightforward guide that explains the integration process step by step.
My blog is hosted on pikapods and I’m planning to start collecting subscribers soon. I want to have the email functionality ready before people begin signing up. When I tested the setup using Mailgun’s sandbox domain with an API key, the emails weren’t being delivered to my test subscriber.
I’m getting mixed information about Mailgun’s pricing structure and whether they still offer a no-cost plan. Can someone clarify if Ghost still supports Mailgun integration and what the current setup process looks like? Any specific configuration steps for pikapods hosting would be helpful too.
mailgun is solid with ghost! you def gotta verify your domain since sandbox only sends to verified emails. check your mailgun dashboard to add test emails. oh, and yeah, no more free tier, but the first 1000 emails are cheap! you’ll be good to go.
The Problem: You’re trying to configure Mailgun for email delivery with your Ghost blog hosted on pikapods, but emails aren’t sending to your test subscriber, even when using the Mailgun sandbox. You’re also unsure about Mailgun’s current pricing and whether the integration with Ghost is still straightforward.
Understanding the “Why” (The Root Cause):
The core issue is likely related to your use of Mailgun’s sandbox environment. The sandbox only delivers emails to addresses that are explicitly verified within the Mailgun dashboard. Furthermore, Mailgun no longer offers a free plan; it’s now a pay-as-you-go service. While this might seem like a setback, the cost is relatively low for new blogs (around $0.80 per 1000 emails). The solution involves moving beyond the sandbox, setting up your own domain, and correctly configuring your Ghost installation to use your Mailgun credentials. Incorrect DNS settings, region mismatches, and using the wrong Ghost base URL are other potential hurdles.
Step-by-Step Guide:
-
Configure Mailgun and Verify Your Domain: Create a Mailgun account (if you don’t already have one) and select a paid plan. Then, verify your domain with Mailgun by adding the necessary DNS records (TXT and CNAME) provided by Mailgun to your domain’s DNS settings. This is crucial; failure to correctly propagate these records will prevent email delivery. Allow sufficient time (often several hours) for DNS propagation to complete after adding these records. Add your test email address to the list of verified recipients in your Mailgun dashboard.
-
Set Up Ghost Email Settings: In your Ghost admin panel (typically at /ghost), navigate to Settings > Email. Enter your Mailgun domain, your private API key (not the public key), and ensure your base URL correctly reflects your Ghost blog’s address. Double-check that your base URL includes the https:// prefix.
-
Verify Ghost Configuration: Check that the Mailgun settings in Ghost are saved correctly and that there are no typos.
-
Check Mailgun Region Settings: Ensure that the Mailgun region you’ve selected (US or EU) matches your server’s location (pikapods hosting location). Mismatched regions can lead to delivery problems.
-
Test Email Delivery: Send a test email to your verified recipient. If the email still doesn’t arrive, check your Mailgun logs for error messages. These logs will provide valuable clues about the problem’s source.
-
Review DNS Settings: Carefully check all DNS records associated with your domain, paying close attention to MX records and the TXT and CNAME records required for Mailgun verification. Incorrect or missing records are common causes of delivery failure.
Common Pitfalls & What to Check Next:
- DNS Propagation Delays: Allow ample time for DNS changes to propagate (several hours). Tools like
dig or online DNS checkers can help confirm propagation.
- Incorrect API Key: Verify that you’re using the private API key and not the public key.
- Firewall Issues: Check if your server’s firewall is blocking outgoing connections on port 25 or 587 (the ports typically used for SMTP).
- Ghost Version: Older Ghost versions might not be fully compatible with Mailgun’s updated API. Update Ghost to the latest version if you haven’t already.
- Rate Limiting: If you’re sending many emails in a short period, Mailgun might be rate-limiting your requests. Check Mailgun’s documentation on rate limits.
Still running into issues? Share your (sanitized) config files, the exact command you ran, and any other relevant details. The community is here to help!
Mailgun is indeed a reliable option with Ghost, but you’re currently limited by the sandbox environment, which only allows sending to verified addresses. For full functionality, you’ll need to apply for a paid plan and associate your own domain. While Mailgun has removed their free tier, their pricing is now pay-as-you-go, typically around $0.80 per thousand emails, making it affordable for most new Ghost blogs. As for the setup on pikapods, navigate to Settings > Email in the Ghost admin panel. Ensure you have your Mailgun domain, private API key, and correct DNS settings for verification, as errors often arise there.
had this exact setup on pikapods last month. check your mailgun region settings - eu vs us makes a huge difference. also make sure you’re using the correct base url in your ghost config, not just the api key. most people forget that part and emails just disappear into the void.
Mailgun domain verification gets messy on shared hosting like pikapods. DNS propagation delays and wrong MX records cause most problems. Don’t forget to add the TXT and CNAME records Mailgun gives you - people skip this all the time. Mailgun killed their free tier in 2022, but pay-as-you-go starts at $0.80 per 1,000 emails. Pretty fair for new blogs. Ghost integration still works great though. Use your private API key in Ghost config, not the public one. And update Ghost if you haven’t - older versions don’t play nice with Mailgun’s newer API.
This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.