Skip to content
iBlockSpam
Setup guides

How do you add email DNS records in Porkbun?

By iBlockSpam Team How we check our guides Updated 9 min read 8 sources
Short answer

In Porkbun, open Domain Management, select DNS under your domain (or Details, then the edit icon next to DNS Records) and click Add Record. Choose MX, TXT or CNAME, leave Host blank for the root domain or enter only the prefix such as _dmarc, paste the Answer from your provider, set Priority for MX, then click Add.

Porkbun's DNS editor is one short form, so adding email records is quick once you know its two habits: the Host field is left blank for your root domain, not filled with @, and your domain may already carry Porkbun's own email forwarding records. Miss either and mail can go to the wrong place.

This guide walks through MX, SPF, DKIM and DMARC records in Porkbun, using Porkbun's knowledge base for every screen name. If the records themselves are new to you, start with SPF vs DKIM vs DMARC.

Is your DNS actually hosted at Porkbun?

Porkbun records only work if your domain uses Porkbun's nameservers. Check that first, because Porkbun will happily save records that never get published.

Porkbun's API documentation explains why: "we hold a zone for every domain in the account, so a write always succeeds locally," even when the nameservers answering for the domain belong to someone else. A record added that way changes nothing that resolves.

  1. In Domain Management, select Details next to your domain and look at the Nameservers field.
  2. If it lists Porkbun nameservers, continue with this guide.
  3. If it lists another provider, such as Cloudflare or your web host, add your records there instead. Our Cloudflare guide covers the most common case.

Our MX Lookup also shows which nameservers and mail servers the outside world sees for your domain.

Where do you add DNS records in Porkbun?

Every record type uses the same Manage DNS Records menu (Porkbun KB):

  1. Log in. You arrive at Domain Management. If you're already logged in, click ACCOUNT in the top-right corner and choose Domain Management.
  2. Click the DNS button under the domain name. Alternatively, click Details, then the edit icon under DNS RECORDS.
  3. In Manage DNS Records, click Add Record.
  4. Choose the Type, fill in the fields, and click Add.
  5. Click Back to return to the list of records.

At the time of writing (October 2026), the form has these fields:

Field What to enter
Type MX, TXT or CNAME for email
Host Blank for the root domain. Otherwise only the prefix, such as _dmarc
Answer/Value The record value your provider gives you
TTL Seconds. Leave the default unless told otherwise
Priority Appears for MX (and SRV) records only
Notes Optional notes for yourself; not published in DNS

Porkbun's API reference says the Host is the "Subdomain for the record (e.g. 'www', '*' for wildcard, blank for root). Do not include the domain name itself." The minimum TTL is "determined by account settings (typically 600)" seconds, and records created through the API without a TTL default to that minimum.

To change a record, click the pencil icon next to it, edit the values and save. To remove one, click the trash can icon and confirm with OK (Porkbun KB). Porkbun notes that if editing throws an error, deleting the record and adding it again usually fixes it.

What are Porkbun's default email records?

Porkbun's email forwarding and hosting use a standard set of records, which Porkbun's forwarding guide says are set up when you add an email forward. Its parking guide lists them as the default Porkbun records related to email:

Type Host Answer Priority
MX (blank) fwd1.porkbun.com 10
MX (blank) fwd2.porkbun.com 20
TXT (blank) v=spf1 include:_spf.porkbun.com ~all

These matter when you move mail elsewhere. If you add Microsoft 365 or Google Workspace MX records without deleting Porkbun's, your domain has two sets of mail servers, and senders may deliver to whichever they pick. If you use Porkbun-hosted email, its records also include a DKIM key at default._domainkey and a DMARC record at _dmarc (Porkbun KB).

How do you add or edit an SPF record in Porkbun?

SPF is a TXT record on the root domain, so its Host is blank. Your domain can have only one. RFC 7208, section 3.2 says a domain "MUST NOT have multiple records" that an SPF check would select, and Porkbun's own knowledge base warns that a second SPF record leads to delivery problems.

  1. In Manage DNS Records, look for a TXT record with a blank Host whose Answer starts with v=spf1.
  2. If it exists and you still send through Porkbun, click the pencil icon and add your new include before the final all. Porkbun's example of a merged record is v=spf1 include:_spf.porkbun.com include:_spf.emailmarketingtool.example ~all.
  3. If it exists but you no longer send through Porkbun, edit it to replace include:_spf.porkbun.com with your new provider's include.
  4. If none exists, click Add Record, choose TXT, leave Host blank and paste your record into Answer.
  5. Click Add or save.

Example for a domain on Google Workspace only:

Type: TXT   Host: (blank)   Answer: v=spf1 include:_spf.google.com ~all

Our SPF provider pages list each service's include, and the SPF Record Generator merges several into one record within the 10-lookup limit.

How do you add a DKIM record in Porkbun?

Your email provider generates the DKIM key. You publish what it shows you: either a TXT record with the key itself or CNAME records that point to a key the provider hosts.

DKIM as a TXT record

  1. Click Add Record and choose TXT.
  2. Enter the selector host without your domain, for example google._domainkey.
  3. Paste the key, which starts v=DKIM1;, into Answer in one piece.
  4. Click Add.

DKIM as CNAME records

Microsoft 365 and many sending platforms give you CNAMEs.

  1. Click Add Record and choose CNAME.
  2. Enter the host, for example selector1._domainkey.
  3. Paste the provider's target, for example selector1-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft, into Answer.
  4. Click Add, then repeat for selector2._domainkey.

Porkbun's record requirements say a CNAME's Host "cannot be left empty and must be unique and cannot be shared with other records," and its Answer must be a fully qualified domain name. If you see "Could not add DNS record: A CNAME or ALIAS record with that host already exists", an older record is using that name. Porkbun's fix is to delete the conflicting record, then add yours.

Once DNS updates, turn signing on in your provider's console. Our DKIM setup guide for Microsoft 365 and Google Workspace shows where, and DKIM records by provider lists each service's selectors.

What about long 2048-bit keys?

Porkbun's knowledge base doesn't document a length limit for TXT answers at the time of writing (October 2026). Paste the key as one string first. If your provider shows it split into several quoted chunks, that format is also valid: RFC 6376, section 3.6.2.2 says the strings are joined "with no intervening whitespace" before use. Either way, check the published key with the DKIM Checker. Our guide to DKIM keys that are too long for a TXT record covers the fixes if it comes back truncated.

How do you add a DMARC record in Porkbun?

DMARC is a TXT record at _dmarc.

  1. Click Add Record and choose TXT.
  2. Enter _dmarc as the Host. Don't add your domain; Porkbun does that.
  3. Enter your policy as the Answer, for example v=DMARC1; p=none; rua=mailto:dmarc-reports@example.com.
  4. Click Add.

If a _dmarc record already exists, for example from Porkbun email, edit it rather than adding a second. Start at p=none with a reporting address you read, then tighten once reports show every real sender passing. The DMARC Record Generator builds the record, and our none-to-reject guide covers the rollout.

How do you change MX records in Porkbun?

MX records decide where all your incoming mail goes, so plan the switch. Our guide to changing MX records without losing email covers the timing.

  1. Write down your current MX records so you can roll back.
  2. Delete MX records you no longer want, such as fwd1.porkbun.com and fwd2.porkbun.com, with the trash can icon. Porkbun's own email setup instructions say to remove existing root MX records before adding new ones.
  3. Click Add Record and choose MX.
  4. Leave Host blank, paste the mail server into Answer, and set Priority to the value your provider gives you.
  5. Click Add, and repeat for each further MX host.

Parking a domain doesn't touch email. Porkbun says parking "only impacts web hosting." If you later want Porkbun's mail records back, its Email Hosting and Forwarding page has a Fix DNS button that restores them.

What does a complete Porkbun email setup look like?

Here is an example for a domain on Microsoft 365 that also sends support email through Zendesk. Your values will differ; the Host column is what people most often get wrong.

Type Host Answer Priority
MX (blank) example-com.mail.protection.outlook.com 0
TXT (blank) v=spf1 include:spf.protection.outlook.com include:mail.zendesk.com ~all
CNAME selector1._domainkey target from the Defender portal
CNAME selector2._domainkey target from the Defender portal
CNAME zendesk1._domainkey zendesk1._domainkey.zendesk.com
CNAME zendesk2._domainkey zendesk2._domainkey.zendesk.com
TXT _dmarc v=DMARC1; p=none; rua=mailto:dmarc-reports@example.com

None of the Host values contain the domain, and the root records have a blank Host.

How do you check the records after saving?

Give the change at least the TTL of any record you replaced, then check each one:

  1. MX with the MX Lookup: only your new mail servers, no leftover fwd1.porkbun.com.
  2. SPF with the SPF Checker: one record, valid syntax, 10 lookups or fewer.
  3. DKIM with the DKIM Checker and your selector.
  4. DMARC with the DMARC Checker.
  5. Send a test message to an outside mailbox and look for spf=pass, dkim=pass and dmarc=pass in its headers. Our header reading guide shows where.

What are the common Porkbun email DNS mistakes?

  • Typing @ or the full domain into Host. Leave it blank for the root, and use only the prefix elsewhere.
  • Leaving Porkbun's forwarding MX records after moving to another mail provider.
  • A second SPF record next to Porkbun's default one. Edit the existing record.
  • Editing Porkbun DNS when the nameservers point elsewhere. The records save but don't publish.
  • A leftover record at a DKIM host, which blocks the new CNAME.

Next steps

  1. Run the Email Health Check to see MX, SPF, DKIM and DMARC in one scan.
  2. Build your records with the SPF Record Generator and DMARC Record Generator.
  3. Starting fresh? Work through the new domain email setup checklist.
  4. Keep watch for accidental changes: the free Domain Watch checks your public MX, SPF and DMARC records weekly and emails you when they change.

If you later route mail through a filtering service such as iBlockSpam, you'll use the same MX steps with different values. More walk-throughs are in setup guides.

Frequently asked questions

Do I type @ in the Porkbun Host field for my root domain?

No. Porkbun's knowledge base says to leave the Host field blank when you add a record to the root domain, such as an MX or SPF record for example.com. For anything else, enter only the prefix, such as _dmarc or selector1._domainkey. Porkbun adds the domain name for you.

Why does my Porkbun domain have fwd1.porkbun.com MX records?

Those are Porkbun's default email records, used by its email forwarding and hosting: MX records for fwd1.porkbun.com (priority 10) and fwd2.porkbun.com (priority 20), plus the SPF record v=spf1 include:_spf.porkbun.com ~all. If you move mail to another provider, delete those MX records, or some senders will keep delivering to Porkbun.

What does Porkbun's CNAME or ALIAS record already exists error mean for email?

It means another record already uses that host name. Porkbun says a CNAME's host must be unique and can't be shared with other records. For a DKIM CNAME such as selector1._domainkey, look for an old record at the same host, often left by a previous provider, and delete it before adding the new one.

What TTL does Porkbun use for DNS records?

Porkbun's API documentation says the minimum TTL is set by account settings, typically 600 seconds (10 minutes), and records created without a TTL default to that minimum. Porkbun's knowledge base suggests leaving the TTL field at its default unless a provider tells you otherwise, which suits most email records.

Can I edit Porkbun DNS records if my domain uses Cloudflare nameservers?

You can save them, but they won't do anything. Porkbun's API documentation says it keeps a zone for every domain, so writes succeed even when the domain is delegated elsewhere, yet they change nothing that resolves. Add email records at whichever provider your nameservers point to.

Sources

  1. Porkbun Knowledge Base: How to Add DNS Records on Porkbun
  2. Porkbun Knowledge Base: How to Edit DNS Records
  3. Porkbun Knowledge Base: How to use Porkbun email when your DNS is hosted elsewhere
  4. Porkbun Knowledge Base: How to reset DNS and park your domain
  5. Porkbun Knowledge Base: "A CNAME or ALIAS record with that host already exists" error
  6. Porkbun API v3: DNS records reference
  7. RFC 7208: Sender Policy Framework (SPF), section 3.2
  8. RFC 6376: DomainKeys Identified Mail (DKIM), section 3.6.2.2

See how your domain measures up

Run a free Email Health Check: MX, SPF, DKIM, DMARC and transport security in one scan, with the raw records shown. No sign-up.

Keep reading