Sending a Hand-Coded Newsletter Through Moosend
Moosend can send a newsletter coded elsewhere as-is: three ways to import the HTML, the 3 MB limit, and the SPF, DKIM and DMARC checks your domain must pass.

Some newsletters aren't built in an email tool at all. They're written and coded somewhere else, and the email platform's job is to deliver them intact. One Moosend customer described exactly that in a five-star Trustpilot review in November 2025: "I write a long form, image-heavy newsletter that's coded in another app, so it's super important to me to use a service that can cleanly parse my html."
The same reviewer, Larry Weaver, mentioned the other half of the job. After moving his sending to a subdomain, he "ran into some issues with SPF, DKIM and Dmarc", which Moosend's support helped him sort out.
Those are the two steps for anyone in his position, and they take very different amounts of time. Importing the HTML is a few clicks. Verifying the domain you send from depends on DNS changes that, by Moosend's own documentation, can take up to 48 hours to be ready. So the order matters: start the DNS on the first day, and import your issue while the records propagate.
This guide follows Moosend's documentation as published on October 9, 2026, with prices from its pricing page the same day. I haven't sent a newsletter through a Moosend account myself. When the documentation leaves something open, I flag it.
Before anything else: a sender on a domain you own
Writers moving from a personal inbox usually meet this first. In March 2026, someone setting up a newsletter for a new farm asked in r/Emailmarketing: "It looks like Moosend suggests that we set up SPF/DKIM, but obviously we can't do that with regular gmail." The replies agreed that a custom domain comes first, and one gave the reason in a sentence: "You can't set those up for a Gmail address because, well, you don't control Gmail's servers."
Moosend's article on adding a sender confirms it. A sender that doesn't pass its checks "will appear as rejected", and the first two reasons it lists are:
- "You are using a free webmail address such as Gmail, Hotmail, Outlook, or Yahoo email as your sender address."
- "No website was found associated with your sender address domain."
The second one is easy to miss. A domain bought only for email, with nothing at its web address, can still be turned away, so put at least a simple site on the domain before you add the sender. The same article also rules out some address prefixes: "you can't use admin, maildaemon, postmaster, no-reply, and so on". An address like news@ or hello@ on your own domain avoids both problems.
So the order for a writer starting from Gmail is: domain, a website on it, a sender address on it, then the records below.
Add your sender and start the DNS records
Moosend's article on DNS records says plainly what a sender needs: "To verify your sender account, you must create a DMARC value in your DNS management interface." SPF and DKIM are expected too, and Moosend checks the three as one: "Verification takes place for both DKIM, SPF, and DMARC at once, so if one record cannot be verified, verification fails and you will receive an error message."
In the account, the records are under More > Settings > Senders. The SPF and DKIM tabs give you the values to copy. Moosend's article on setting up SPF, DKIM and DMARC with a provider shows the shape of each record:
| Record | Type | Name (host) | Value |
|---|---|---|---|
| SPF | TXT | @ for the root domain, or the subdomain's name | v=spf1 include:spfa.mailendo.com ~all, or your existing SPF record with that include added |
| DKIM | TXT | ms._domainkey, or ms._domainkey.subdomain | The DKIM value from your sender in Moosend |
| DMARC | TXT | _dmarc | Start with v=DMARC1; p=none if your domain has no DMARC yet |
So add all three before you click verify. A sender with two of the three still fails.
Three details in Moosend's documentation catch people out:
- One SPF record only. "Do not create two SPF records because this makes your SPF invalid." If your domain already sends from Google Workspace or another service, edit the existing record to add Moosend's include.
- The DMARC starter value. The provider article's examples use a quarantine policy with report addresses, then add: "If your organization has not set up a DMARC value for your domain name, start with the value v=DMARC1; p=none."
- The wait. After pasting SPF and DKIM, "It takes between 30 minutes to 48 hours before you can move to the next step." The provider article says 30 minutes is usual.
Then check that the DMARC TXT record exists at your DNS host and click Verify DNS records.
If you send from a subdomain
Some writers send their newsletter from a subdomain such as news.yourdomain.com, which is the setup Larry Weaver described. Moosend's documentation covers it in two places.
The provider article gives the DKIM name for a subdomain (ms._domainkey.subdomain) and, for SPF, says to "enter the subdomain instead of @." And the DNS records article explains how Moosend checks: "If there is a subdomain, and it cannot be verified, then its parent domain is also checked. If that parent domain can be verified, then the subdomain is verified as well."
In practice, a subdomain can pass on the strength of the parent domain's records. That's useful if your main domain is already set up for Moosend. If it isn't, give the subdomain its own complete set.
Import the newsletter while the records propagate
Moosend's import article opens with the point that matters here: "instead of creating a new campaign, you can continue with what already works for you." Create a campaign (or open a draft), go to the Design page, switch Imported campaign template on, and pick a method:
| Method | What Moosend takes | Fits when |
|---|---|---|
| Link to your campaign | The link to a campaign hosted on a server | Your other app publishes each issue at a web address |
| Import via a file | A zipped HTML file with .jpg, .png or .gif images, 3 MB at most | Your issue exports as HTML plus an image folder |
| Paste your HTML | The HTML code, pasted into a field | You have the code but no package |
Then click Import.
The choice comes down to images. A long, image-heavy issue can pass 3 MB once its pictures are zipped in, so if yours does, use the link method, or paste HTML whose images already live on the web. The import article doesn't describe how a pasted issue's image addresses are handled, so send yourself a test of the first imported issue before it goes to the list.
Verify, then send
Moosend re-checks the records at two moments: when you click Verify DNS records, and "In the campaign wizard, when the user adds a sender and clicks Next." So the campaign you imported will tell you at the sender step whether the domain is ready.
Two notes from the same article are worth keeping for later issues:
- "Verified DNS records keep the verified status for 48 hours. After this time, you can re-verify the records again."
- Changing the domain's DNS outside Moosend has a wide effect: "all the senders on that domain will become unverified, and you will need to re-verify the domain."
The second one matters if you move to a subdomain later, as Larry Weaver did, or change providers for your other mail. Make the DNS change, then re-verify in Moosend before your next send date.
Records like these aren't everyday work for a writer. Another five-star reviewer, Derek Hunter, wrote in March 2025 that Moosend's support helped him by "figuring out this and that record, explaining things plainly and thoroughly."
What it costs once the trial ends
Moosend's pricing page on October 9, 2026 offers a 30-day free trial with no card, and its FAQ says the trial's sending covers up to 1,000 contacts. That's enough time to verify a domain and send several real issues.
| Plan | Price at 500 contacts | Team members |
|---|---|---|
| Free trial (30 days) | $0 | 2 |
| Pro, billed monthly | $9 a month | 5 |
| Pro, billed yearly | $7 a month | 5 |
For a newsletter that's already written and coded elsewhere, Pro is the plan to move to. It's Moosend's self-serve plan, the price follows your contact count, and the 5 seats leave room for a designer or editor alongside you. My Moosend pricing guide has the full ladder by list size and the rule for months when your list grows mid-send.
If you're ready to try it with your own issue, open a 30-day Moosend trial for your newsletter, add your sender on day one, and import your latest issue while the records propagate.
FAQ
Does Moosend need DMARC, or just SPF and DKIM? All three. Its DNS records article says you "must create a DMARC value" to verify a sender, and the three are verified together.
Can I send my newsletter from a Gmail address on Moosend? No. Moosend's sender article lists a free webmail address such as Gmail as a reason a sender is rejected, and you can't add SPF or DKIM records to gmail.com.
How long until I can send from my own domain? Moosend's documentation says 30 minutes to 48 hours after you add the SPF and DKIM records. That wait is why the DNS work goes first: add the records on day one, and build or import the issue while they propagate. Check the sender's domain has a website too, since Moosend's sender article lists a domain without one as a reason a sender is rejected.
Can I keep editing the issue after importing it? The import article covers bringing the HTML in, not editing it afterwards. Larry Weaver's review mentions using Moosend's drag-and-drop tools as well, but for coded issues, the safe workflow is to edit in your own app and import the new version.
What can Moosend import as a newsletter file? A zipped HTML file with .jpg, .png or .gif images, 3 MB at most. You can also import from a link to a hosted issue or paste the HTML.
Do I have to verify my domain again later? If you change the domain's DNS outside Moosend, yes. Moosend says all senders on that domain become unverified until you re-verify.
About the author: Tess Morrow is the editorial pen name of the Email MK Tools research team. We haven't sent a newsletter through a live Moosend account; every step here is from Moosend's own documentation. More about Tess.
Sources
Read on October 9, 2026: Moosend documentation, Import a campaign (54417), Working with DNS records (54545), Set up SPF, DKIM and DMARC for a provider (54464) and Add a sender (54351), all last updated September 11, 2025; r/Emailmarketing, "Moosend/Gmail Domain Help", March 3, 2026 (https://www.reddit.com/r/Emailmarketing/comments/1rjutj9/moosendgmail_domain_help/); Moosend pricing page and pricing FAQ (https://moosend.com/pricing/); Trustpilot, Moosend reviews of November 1, 2025 and March 4, 2025 (https://www.trustpilot.com/review/moosend.com).