Before a website goes live, its address appears in planning notes, design mockups, and conversations with collaborators. Knowing what each piece of that address means helps you communicate clearly and avoid confusion. This article uses a single hypothetical URL to walk through the difference between a domain name and a full URL, then shows how to label, compare, and record address parts for your own project.
What Domain Names and Full URLs Each Answer
Suppose you are planning a small personal project and you sketch out a web address for a notes page: https://example.org/notes/first-page?view=compact#intro. This is a hypothetical address used only to practice reading URL strings; it does not point to a real, live page. Even before you build anything, you can already ask two different questions about this string. The first question is: which server on the internet should handle my request? The second question is: which specific resource on that server do I want, and under what conditions should it be displayed?
A domain name answers the first question. Domain names are a key part of the internet infrastructure because they provide a human-readable address for any web server available on the internet. Computers communicate through IP addresses, which are difficult for people to remember and may change over time, so domain names give us a stable, readable label that points to a server. In our example, example.org is the domain name. It tells a browser which server to contact, but it says nothing about which page or file on that server you want.1
A full URL answers the second question. A URL is the address of a unique resource on the internet, and it is one of the key mechanisms used by browsers to retrieve published resources such as HTML pages, images, or documents. In theory, each valid URL points to a unique resource. Our example string is a complete URL: it names the server, specifies a path to a particular page, adds a query parameter, and includes a fragment identifier. The domain name is only one component inside that larger address.2
Labeling Each Part of the Example Address
Now take the same hypothetical string and mark each component. The scheme is https, which indicates the protocol the browser must use to request the resource. The authority section contains the domain name example.org. The path is /notes/first-page, which represents a location on the web server. The question mark introduces the query string view=compact, and the hash symbol introduces the fragment intro. These two punctuation characters serve as delimiters: the question mark signals that everything after it is a set of parameters for the server, and the hash signals that everything after it is a bookmark within the resource itself.2
The domain name itself has internal structure. A TLD, or top-level domain, is the final component of a domain name. In example.org, org is the TLD. The label immediately before the TLD is called the second-level domain. Together these labels form a fully-qualified domain name, and adding a scheme like https:// makes the result a complete URL. Understanding this nesting helps you see that a domain name is not a single flat word but a hierarchy read from right to left.31
The query and fragment deserve special attention because they behave differently. Parameters after the question mark are sent to the server as part of the request, and the server can use them to modify what it returns. The fragment after the hash, however, is never sent to the server with the request. It acts as a bookmark inside the resource, telling the browser to scroll to a particular spot. This distinction matters when you are planning links or debugging why a page looks different from what you expected.2
Comparing Variations with the Same Host
Keep the host part of our example fixed at example.org and change only the path. If you write https://example.org/notes/second-page, the domain name is identical but the path points to a different location on the server. The browser will send its request to the same server, but the resource it asks for is different. You can think of the domain name as the building address and the path as the room number inside that building.
Now change the query string while keeping the path the same. Compare https://example.org/notes/first-page?view=compact with https://example.org/notes/first-page?view=full. Both addresses target the same path on the same server, but they carry different parameter values. The server may use these parameters to decide how to present the resource, though the exact behavior depends entirely on how that server is configured. From the URL string alone you can observe what is being requested, but you cannot determine how the server will respond.
Finally, change only the fragment. Compare https://example.org/notes/first-page?view=compact#intro with https://example.org/notes/first-page?view=compact#summary. The server receives the same request in both cases because the fragment is never transmitted. The difference is purely a client-side instruction: the browser will scroll to a different position within the same document. Recognizing this pattern helps you understand why two URLs that look different in the address bar can produce the same server response.
Building an Address Description Card
Record a short description card for your hypothetical project address. The card should contain three pieces of information: the purpose of the page in plain language, the full URL string, and a labeled breakdown of each component. For our example, the purpose might be "a compact view of the first notes page, scrolled to the introduction section." The full URL is https://example.org/notes/first-page?view=compact#intro. The breakdown lists scheme as https, domain as example.org, path as /notes/first-page, query as view=compact, and fragment as intro.
Write this card in a format that is easy to copy into other documents. A simple table with two columns works well: one column for the component name and one for its value in your specific address. If you are working with a collaborator, sharing this card removes ambiguity about which part of the address each person is referring to during a conversation. The card also serves as a checklist when you later configure links in your site content.
Decide whether to include the fragment in your card. If the fragment is only a convenience for your own reading and does not affect what the server returns, you might note it separately with a remark like "client-side bookmark, not sent to server." This small annotation prevents future confusion when someone wonders why removing the fragment from the URL does not change the page content they receive.
Verifying the Card by Hand
Copy the full URL string into a plain-text editor and manually place a label above each segment. Start from the left: mark https as the scheme, then example.org as the domain, then /notes/first-page as the path. When you reach the question mark, label everything after it up to the next delimiter as the query. When you reach the hash, label the remainder as the fragment. This manual labeling exercise takes less than a minute and catches transcription errors that are easy to miss when reading quickly.
Check your labeled segments against the description card you built in the previous step. Compare each component value character by character. Pay particular attention to slashes, question marks, and hash symbols, because a missing or misplaced delimiter changes the meaning of everything that follows it. If any segment on your card does not match the string in your text editor, correct the card before you use it in any planning document or conversation.
Repeat this check after any edit to the address. If you add a new query parameter or change the path, run through the labeling process again rather than assuming the rest of the string stayed intact. Building this habit early means that when your project grows to include many pages, each address card remains trustworthy without requiring a full re-read of the entire URL from scratch.
Keeping the Record for Future Use
Store your address description card alongside your other project planning notes. The exact storage location is a personal choice: a markdown file in your project folder, a note in a wiki, or a shared document all work. The important point is that the card lives where you will find it when you need to write a link, explain the address to someone, or troubleshoot why a page is not loading as expected.
When you eventually build the real site, update the card to reflect the actual domain and paths you use. The structure of the card stays the same; only the values change. Because you practiced the labeling process with the hypothetical example, transferring the method to a real address is straightforward. You already know which punctuation marks separate which components, so you can focus on getting the specific values right.
Consider adding a brief note to each card explaining why you chose a particular path structure or query parameter. These notes are not technical requirements; they are reminders for your future self. A sentence like "I chose /notes/ as the base path because all note pages will live under this directory" saves you from re-deriving the reasoning months later when the original context has faded from memory.
Frequently asked questions
Is the fragment part of a URL sent to the web server?
No. The fragment identifier, which is the part after the hash symbol, is never sent to the server with the request. It acts only as a client-side instruction telling the browser where to scroll within the already-loaded resource.2
What is the difference between a domain name and a URL?
A domain name identifies which server to contact, while a URL is a complete address that includes the scheme, domain, path, and optionally a query and fragment. The domain name is one component inside a URL.12
Does changing the query string always change the page content?
Not necessarily. Query parameters are sent to the server, but how the server uses them depends on its own configuration. Two URLs with different query values may return the same content if the server ignores or handles those parameters identically.2
What is a Domain Name? - Learn web development | MDN. Retrieved 2026-11-01. ↩︎ ↩︎ ↩︎
What is a URL? - Learn web development | MDN. Retrieved 2026-11-01. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎
TLD - Glossary | MDN. Retrieved 2026-11-01. ↩︎