ACM certificates for load balancers and CloudFront

What an agent needs to know about AWS Certificate Manager public certificates — which Region each service needs (us-east-1 for CloudFront), DNS validation and the CNAME it requires, why a certificate stays Pending validation or times out after 72 hours, renewal, and the name-coverage rules that cause certificate errors in browsers.

markdownreferencev4D9DE-JDDTstage: referencetrust: officialservice: acminterface: anyACMAWS Certificate ManagerDNS validationPending validationValidation timed outacm-validations.aws CNAMEus-east-1 CloudFront certificatecertificate renewalwildcard certificateCreate records in Route 53email validationNET::ERR_CERT_COMMON_NAME_INVALIDSAN

Created 18 Oct 2026 · Modified 23 Oct 2026 · 4 versions

Request the certificate in the Region of the service that uses it (us-east-1 for any CloudFront distribution) and validate by DNS. Then leave the validation CNAME in place forever: ACM renews automatically for as long as the certificate is in use and the record exists.

Which Region

Used byCertificate Region
CloudFront (viewer HTTPS)us-east-1, whatever Region the origin is in
ALB / NLB listenersThe load balancer's Region. To use the same names with ELB in several Regions, request a certificate in each; certificates can't be copied between Regions
CloudFront → an ELB origin over HTTPSThe ELB's certificate can be in any Region (it is the ELB's own)

Each Region's request is validated on its own (the Regions page says you must revalidate each name per Region). The DNS validation token is the same in every Region, though, so a CNAME you already published satisfies the new request, for example the us-east-1 copy CloudFront needs.

DNS validation

ACM gives one CNAME per name: _<x>.example.com. → _<y>.acm-validations.aws.. A wildcard (*.example.com) shares the record of its base domain. Add it once:

  • Route 53: the ACM console offers Create records in Route 53. It shows when you can write to the hosted zone and the name isn't yet validated. ACM can't create the record through its own API; create it yourself with Route 53's ChangeResourceRecordSets (reference/route53/records-and-changes.md).
  • Another DNS provider: enter the name and value. Many providers append the domain automatically: enter only _<x>, or the record becomes _<x>.example.com.example.com. and validation fails.

After the record is in place, the status can stay Pending validation for up to 30 minutes.

Statuses and failures

SituationCause → fixCheck
Pending validation for hoursThe CNAME is missing, has the wrong name (double domain), or the DNS provider isn't authoritative for the domain (check the registrar's name servers). Listeners and distributions can't use the certificate yetaws acm describe-certificate --certificate-arn <c> --region <r> --query Certificate.DomainValidationOptions[].[ValidationStatus,ResourceRecord], then dig <ResourceRecord.Name> CNAME +short
Validation timed outNot validated within 72 hours of ACM generating the CNAME. Request a new certificateaws acm describe-certificate --certificate-arn <c> --region <r> --query Certificate.Status → VALIDATION_TIMED_OUT
Validation fails through long CNAME chainsMore than five chained CNAMEs breaks resolution. Use email validationdig <name> CNAME repeatedly, counting the hops
A provider rejects names starting with _See ACM's DNS-validation troubleshooting page (not collected)The provider's record form rejects the name
Certificate created with email validationIt can't be switched to DNS. Delete and request again with DNSaws acm describe-certificate --certificate-arn <c> --region <r> --query 'Certificate.DomainValidationOptions[].ValidationMethod'
No authority over the domain's DNSUse email validationdig <apex> NS +short vs the provider you can edit
Renewal stoppedThe certificate is no longer attached to an AWS service, or the CNAME was deleted. Both stop automatic renewalaws acm describe-certificate --certificate-arn <c> --region <r> --query 'Certificate.[InUseBy,RenewalEligibility,RenewalSummary]'

Name coverage (the browser errors)

  • Every name clients use must be in the certificate's SAN, exactly or by a wildcard at the same level (*.example.com covers www.example.com, not a.b.example.com, and not example.com itself unless listed).
  • A load balancer's default …amazonaws.com DNS name can't be on a public certificate. Clients must use your own name, or see NET::ERR_CERT_COMMON_NAME_INVALID.
  • CloudFront checks that each alternate domain name is covered by the attached certificate before accepting it.

Keys and imported certificates

ACM issues RSA keys up to 2048 bits. CloudFront also accepts imported RSA keys up to 4096 bits, and ECDSA P-256 and P-384. Imported certificates aren't renewed by ACM. Re-import at least 24 hours before NotAfter, because CloudFront can take up to 24 hours to pick up the change.

Read this document as markdown — the same bytes an agent receives.