Who this is for: Store owners investigating missing order confirmations or shipping notices, and technical leads who recently changed a third-party sending service or DNS records.
Also for: Operators managing several business domains who need to check each From address, authentication result, and provider log separately.
Start with the send event, not the DNS record
An order email can fail at several points: the store may not trigger the notification, the sending integration may not hand it off, the provider may reject it, or the recipient’s system may deliver it to spam or quarantine. These are different failures. Changing SPF will not fix a notification that never ran.
WooCommerce’s troubleshooting guidance separates problems such as notification settings, hosting mail functions, delivery, and spam filtering. Use its email troubleshooting steps to identify the stage before editing DNS. Its email provider guidance also explains that a store can use an external provider rather than relying on the host’s default mail function.
Check these sources of evidence:
- The order record: did the order reach the status that should trigger the notification?
- The store’s email settings: is the relevant customer notification enabled, and is its recipient address correct?
- The application or mail integration log: does it show an attempt to hand off the message?
- The third-party provider’s event log: does it show accepted, deferred, rejected, bounced, or delivered status?
- The recipient’s mailbox: is the message in spam, quarantine, or a rule-controlled folder?
| Evidence you can see | Likely stage to investigate | Next check |
|---|---|---|
| No notification attempt in the store or integration log | Application trigger or notification configuration | Check the order status, notification enablement, and application logs |
| Store records an attempt, but the provider has no matching event | Handoff, integration, or account configuration | Check the integration connection and its error details |
| Provider records a rejection or bounce | Provider or recipient-side acceptance | Save the event response and ask the provider what it means |
| Provider records delivery, but the recipient cannot find the message | Filtering, quarantine, mailbox rules, or recipient-side handling | Check the recipient’s folders and headers; compare a test recipient |
| Message arrives but authentication fails | DNS configuration or signing setup | Verify the exact domain and selector shown in the message headers |
A provider status is evidence about that provider’s stage, not proof that the recipient saw the message. Keep the order ID, event time, status, and response text together so you can compare a test run with the original report.
Separate SPF authorization from DKIM signing
SPF and DKIM answer different questions. SPF checks whether the sending system is authorized for the domain used in the envelope sender path. DKIM checks a cryptographic signature attached to the message. Neither check, by itself, confirms that the visible From domain aligns with the authenticated domain or that the recipient will accept the message.
Before changing either record, identify the actual sending service for the affected email. A store can have one provider for order notices and another for a different business workflow. The record values and DKIM selector are provider-specific; do not paste a setup example from a different service.
For SPF, check that the current provider’s authorization is included in the SPF policy for the relevant domain, while accounting for any other legitimate sending sources that still use that domain. The SPF standard describes how a domain publishes and evaluates its policy. It does not make a copied record from another provider correct for your setup. (RFC 7208: Sender Policy Framework)
A domain should not publish multiple SPF records as separate policies. If you find more than one, do not simply delete one: first identify every sender represented in the existing records, then consolidate the authorized sources according to the SPF rules and your provider’s instructions.
For DKIM, compare the signature result and signing domain in the received message headers with the DNS record published for the selector used by your provider. A provider may sign with a domain that differs from the address shown in From. That can still show a valid DKIM signature, while failing an alignment check. The DKIM standard defines the signature mechanism; the message headers show what happened to this particular email. (RFC 6376: DomainKeys Identified Mail)
Compare the visible From address with authentication results
A message can pass SPF or DKIM and still fail DMARC alignment. DMARC compares the authenticated domain from SPF or DKIM with the domain the recipient sees in the From header. The domains do not have to be textually identical in every configuration, but the required alignment rules must be met.
Use a test message delivered to a mailbox where you can view the full headers. Record the visible From address, the SPF result and its evaluated domain, the DKIM result and signing domain, and the DMARC result. Do not rely only on a green status in a provider dashboard: the header lets you see which domains were evaluated for that message.
| Header or DNS item | What to inspect | What a mismatch may mean |
|---|---|---|
From: |
The address shown to the recipient | This is the domain DMARC evaluates for alignment |
| SPF result | Pass or fail, plus the evaluated envelope domain | The sender may be unauthorized, or the evaluated domain may not align |
| DKIM result | Pass or fail, plus the signing domain and selector | Signing may be absent, invalid, or associated with a different domain |
| DMARC result | Pass or fail, plus the policy domain if shown | Neither SPF nor DKIM may have passed with the required alignment |
| DNS records | Provider-specific SPF and DKIM records; the DMARC policy | Records may be missing, duplicated, stale, or attached to the wrong domain |
Recipient-provider policies can differ. For messages sent to Gmail, consult the current sender requirements and authentication guidance; do not assume that a requirement for one recipient service applies identically to every mailbox provider. The current guidance distinguishes general sender requirements from additional requirements for senders exceeding 5,000 messages per day to Gmail, including authentication and alignment conditions. Check the live guidance for its exact scope before applying it to your traffic.
A passing DMARC result still does not mean “inbox guaranteed.” It reports authentication and alignment outcomes for that message. It does not override filtering, recipient settings, message reputation, or an explicit quarantine policy.
Treat DMARC policy as an operating choice
DMARC tells recipient systems how to handle mail that fails its policy and can provide reports about authentication outcomes. Before changing the policy, map every legitimate sending source for the domain: order notifications, marketing tools, support systems, and any other service authorized to use the From domain.
RFC 9989 was published in May 2026 and replaces the earlier DMARC standards RFC 7489 and RFC 9091. That is a standards update, not an automatic change to your store’s DNS or a declaration that every recipient provider now imposes the same policy. Check the published DMARC specification when reviewing the protocol itself.
Use this order of work:
- Read the current DMARC record and note its policy and reporting destinations.
- Compare report results with your inventory of legitimate senders.
- Investigate sources that fail SPF or DKIM alignment before tightening enforcement.
- Confirm that the store’s actual From domain matches the domain you intend to authenticate.
- Make policy changes deliberately and monitor the resulting reports.
If reports show a legitimate provider failing alignment, fix the sending configuration or DNS records first. Tightening the policy before identifying all senders can cause expected business messages to be rejected or quarantined. For a policy change, keep a record of the previous value and the reason for the change so you can interpret later results.
Follow the evidence with a decision branch
Use this decision tool for one affected message at a time. It keeps the next action tied to observable evidence instead of treating “order email missing” as a synonym for “SPF problem.”
- If there is no application or provider send event, check the order status, notification settings, integration, and application logs. Do not start by changing SPF.
- If the application records a handoff but the provider has no event, inspect the integration connection and error details; ask the provider about the missing event if the application reports a successful handoff.
- If the provider records a rejection or bounce, capture its exact response and ask the provider what action it indicates. Review the affected recipient and domain rather than making a broad DNS change.
- If SPF or DKIM fails, compare the evaluated domain, selector, and record with the instructions for the actual third-party email service. Preserve other valid senders when correcting SPF.
- If SPF or DKIM passes but alignment fails, compare the authenticated domain with the visible From domain, then correct the provider’s signing or sender-domain configuration.
- If DMARC passes but the email is in spam, inspect recipient filtering, quarantine, mailbox rules, content, and the provider’s event detail. Passing authentication alone does not prove inbox placement.
- If authentication passes and the provider reports rejection, send the provider the event timestamp, response code, affected domain, and sanitized header evidence.
Keep the test reproducible. Place a test order, note its status and time, and send to more than one mailbox you control. Save the provider response and the authentication results from each received message. Different recipients may produce different outcomes, so report what each test showed rather than generalizing from one mailbox.
To inspect DNS from a shell, query the domain and the exact DKIM selector supplied by the provider:
dig +short TXT your-domain.example
dig +short TXT selector._domainkey.your-domain.example
dig +short TXT _dmarc.your-domain.example
Replace the domain and selector with your own values. These commands show published DNS text; they do not prove that a message used those records, that the provider signed with the expected selector, or that a recipient accepted the message. Verify the message headers and provider event separately. For a host-side check unrelated to authentication, the SSH access guide covers connecting to a Linux server; server access still cannot substitute for the sending provider’s delivery logs.
| Observed result | Change DNS? | Better next action |
|---|---|---|
| No send event | No | Fix the notification trigger or integration, then run another test |
| SPF fails and the provider confirms its required record is missing | Yes, after inventorying existing senders | Add or correct only the provider-required authorization |
| DKIM fails and the selector record is absent or incorrect | Yes, using the provider’s current selector instructions | Publish the correct record and retest a newly sent message |
| Authentication passes but From alignment fails | Maybe; first confirm the provider’s supported domain setup | Align the signing or envelope domain with the intended From domain |
| DMARC passes but mail lands in spam | Usually not as the first move | Review provider and recipient evidence, content, filtering, and user reports |
| Provider rejects mail despite passing authentication | Not without evidence | Give the provider the response code, timestamp, and relevant headers |
Keep server rental separate from mail delivery
The order-email chain involves the store application, the third-party sending service, DNS authentication, and the recipient’s filtering. Renting a server does not itself provide a third-party email sending service, establish SPF or DKIM, improve a sending domain’s reputation, or guarantee inbox placement. Keep the mail service’s records and sending identity under the control of the service and domain configuration that actually handle the messages.
If you are also planning a store move, validate the order chain before and after migration: place a test order, confirm that the notification triggers, check the provider event, and inspect the received headers. Review OSFP Cloud’s service boundaries before treating server hosting and email delivery as the same service. If the current setup depends on a shared host or cloud instance, its limits may include competing workloads, constrained control over the environment, or unclear allocation of resources; an OSFP Cloud dedicated AMD physical server may suit a workload that needs an entire machine for the store, but it does not replace the third-party sender or guarantee delivery. If email is the only issue, fix the sending chain first rather than migrating servers.
Frequently asked questions
What should you check first when store order emails land in spam?
Start with the order record, notification settings, and the sending provider’s event log. If there is no send event, investigate the application trigger or integration. If the provider records a send, inspect its delivery response and the received message headers before changing SPF, DKIM, or DMARC.
The provider says an order email was sent, but the customer cannot find it. What next?
Ask the recipient to check spam, quarantine, and mailbox rules, then compare the provider’s event status with the recipient’s message headers if available. Record the response code and timestamp. A provider’s accepted or sent status does not necessarily prove that the message reached the inbox or was displayed to the recipient.
Do you still need SPF and DKIM when you use a third-party email service?
Usually, you must publish the DNS records required by the service you actually use, but do not copy another provider’s sample values. Check the provider’s current setup instructions, confirm which domain signs the message, and test the resulting headers. Also inventory other legitimate senders before editing an existing SPF record.
Why can an order email still go to spam when DMARC passes?
DMARC passing shows that at least one aligned SPF or DKIM path passed for that message; it does not guarantee inbox placement. Recipient filtering can still consider reputation, message content, user feedback, policy, and other signals. Use provider logs and test messages to locate the failure rather than treating DMARC as an inbox guarantee.
Check the evidence in order: application trigger, provider event, authentication results, and recipient handling. If you are separately evaluating an independent-site migration, map that email chain before moving the store, then validate it again on the destination. The WooCommerce email troubleshooting reference can help you identify which stage needs attention; server hosting should remain a separate decision from mail sending and deliverability.
Last updated November 5, 2026. RFC status and sender requirements checked against the published DMARC standard and the current sender guidance.
Questions
What should I check first when store order emails land in spam?
Start with the order record, the store’s email notification settings, and the sending provider’s event log. If there is no send event, investigate the application trigger or mail integration. If the provider records a send, inspect its delivery response and the received message headers before changing SPF, DKIM, or DMARC.
The provider says an order email was sent, but the customer cannot find it. What next?
Ask the recipient to check spam, quarantine, and any mailbox rules, then compare the provider’s event status with the recipient’s message headers if available. Record the response code and timestamp. A provider’s accepted or sent status does not necessarily prove that the message reached the inbox or was displayed to the recipient.
Do I still need SPF and DKIM when I use a third-party email service?
Usually, you must publish the DNS records required by the service you actually use, but do not copy another provider’s sample values. Check the provider’s current setup instructions, confirm which domain signs the message, and test the resulting headers. Also inventory other legitimate senders before editing an existing SPF record.
Why can an order email still go to spam when DMARC passes?
DMARC passing shows that at least one aligned SPF or DKIM path passed for that message; it does not guarantee inbox placement. Recipient filtering can still consider reputation, message content, user feedback, policy, and other signals. Use provider logs and test messages to locate the failure rather than treating DMARC as an inbox guarantee.
Run Your Store Stack on Dedicated Hardware
Deploy your store and supporting services on a whole physical server in Tokyo.
From $462 / month