When configuring a domain, it is easy to pause at the choice between an A record and a CNAME. Both seem to connect names, but the value on the right-hand side is different. An A record maps a name to an IPv4 address; a CNAME maps one name to another hostname.
What does each record point to?
If the fictional app.example.test points to server address 192.0.2.10, that is an A record. If www.example.test is an alias for app.example.test, that is a CNAME. The CNAME value is another name, not a numeric IP address.
| Record | Name | Value | How to read it |
|---|---|---|---|
| A | app.example.test | 192.0.2.10 | The IPv4 address for this name |
| CNAME | www.example.test | app.example.test | An alias that leads to another name |
In this example, a lookup for www.example.test follows the alias to find the address for app.example.test. The diagram likewise shows the A arrow leading to an IP address and the CNAME arrow leading to a name.
An A record maps a name to an IPv4 address. A CNAME is an alias for another name; in this example, it leads to the address found through the A record for app.example.test.
What if the old address still appears after a DNS change?
First, verify that the hosted zone you edited is the one actually delegated for the domain. A record in a different zone can appear in the console while public DNS gives another answer. Next, compare the record's name, type, and value separately. It is also easy to update app when you meant to update www.
In a terminal, substitute a domain you own and query the two record types separately. The .test names below are illustrative; do not expect them to resolve as written.
dig A app.example.test
dig CNAME www.example.testIf the results are unexpected, recheck the exact name you queried and whether the hosted zone containing the records is connected to the actual domain. During a service migration, record the old values so you can reverse an incorrect change.
Before creating a record, decide whether it should point directly to a fixed IPv4 address or follow another hostname. Once you choose a type, review the record name and value independently. This two-row example covers subdomains only; a zone apex or an alias to an AWS resource has different constraints and should not be treated as identical.
Key takeaways
In Route 53, an A record maps a hostname to an IPv4 address, while a CNAME maps it to another hostname. If a change seems absent, inspect the delegated hosted zone, the name/type/value, and then caching. Choose the record based on its real target, not just the shape of the name.

