Before a website launches, its address appears in planning documents, drafts, and conversations with collaborators. Knowing which part of that string is the domain name, which part is the path, and which part is optional helps you describe your own site accurately and avoid confusion when sharing links. This article uses one clearly hypothetical address to walk through each piece step by step.
What a Domain Name Answers and What a Full URL Answers
Consider this hypothetical address, which we will use throughout the article purely as a string to take apart: https://example.org/notes/first-page?view=compact#intro. This address does not point to a real page and has not been published anywhere. It exists only so we can label each segment and understand what role each one plays. The domain name portion here is example.org. Domain names provide a human-readable address for any web server available on the Internet, because the underlying IP addresses that computers use are difficult for people to remember and may change over time.1
A full URL, on the other hand, answers a more specific question: which exact resource on that server should the browser retrieve? A URL is the address of a unique resource on the internet and is one of the key mechanisms used by browsers to retrieve published resources such as HTML pages, CSS documents, and images. So while the domain name tells you which server to reach, the complete URL tells you which particular page, file, or section on that server you are asking for. In our example, the domain name example.org identifies the server, and everything after it narrows the request to one specific resource.2
This distinction matters when you are preparing a site for launch. If someone asks for your domain name, they want the short, memorable identifier. If they ask for the URL of a particular page, they need the full string including the path and any additional parameters. Mixing these up in conversations or documentation can lead to broken links or misdirected requests, so it is worth being precise from the start.
Labeling Each Part of the Example Address
Let us return to our hypothetical string and mark every component. The first segment is https, which is the scheme. It indicates the protocol the browser must use to request the resource. For websites, the protocol is typically HTTPS or HTTP. Next comes example.org, which is the authority portion containing the domain name. A domain name has a simple structure made of several parts separated by dots and read from right to left, with the rightmost part being the top-level domain. In this case, org is the TLD and example is the label immediately before it.21
After the authority comes the path, which in our example is /notes/first-page. The path represents the location of a resource on the web server. In the early days of the Web, a path like this represented a physical file location, but nowadays it is mostly an abstraction handled by web servers without any physical reality. Following the path is the query string ?view=compact. The question mark signals the start of the query, which provides extra parameters to the web server as key-value pairs. Here the key is view and the value is compact.2
Finally, the hash symbol introduces the fragment identifier, which in our example is intro. The fragment represents a sort of bookmark inside the resource, giving the browser directions to show the content located at that bookmarked spot. It is worth noting that the part after the hash, also known as the fragment identifier, is never sent to the server with the request. So the full breakdown is: scheme https, domain example.org, path /notes/first-page, query view=compact, and fragment intro. Each delimiter has a specific role: the question mark introduces the query, and the hash introduces the fragment.2
Comparing Different Paths and Queries on the Same Host
To see how the pieces work independently, keep the scheme and domain name fixed at https://example.org and change only the path. If we write https://example.org/about, we are asking for a different resource on the same server. The domain name has not changed, so the browser still contacts the same web server, but the path now points to whatever resource the server associates with /about. Similarly, https://example.org/notes/second-page would request another resource under the same notes directory. We are not claiming these pages exist; we are simply observing how the string changes meaning.
Now keep the path fixed and vary the query string. The address https://example.org/notes/first-page?view=full uses the same path as our original example but passes a different value for the view parameter. The web server can use those parameters to do extra processing before returning the resource. Each web server has its own rules regarding parameters, so we cannot assume what the server will actually do with view=compact versus view=full. We can only observe that the strings differ and that the difference is communicated to the server through the query portion.2
What about the fragment? Changing #intro to #summary does not alter what the server receives, because the fragment is never sent with the request. It only affects where the browser scrolls within the already-retrieved document. This means two URLs that differ only in their fragment point to the same server resource but may display different positions within it. For your own planning, this distinction helps you decide whether a difference in address reflects a genuinely different page or merely a different scroll position on the same page.2
Building an Address Description Card for Your Project
Write down a short card for each address your project will use. For our hypothetical example, the card might read: Purpose: main notes page with compact view and introduction bookmark. Full address: https://example.org/notes/first-page?view=compact#intro. Scheme: https. Domain: example.org. Path: /notes/first-page. Query: view=compact. Fragment: intro. This format keeps every component visible at a glance and makes it easy to spot mistakes when you later copy the address into a link or share it with a collaborator.
Record the purpose in plain language rather than technical jargon. If the page is meant to display a list of project notes in a compact layout, say exactly that. The purpose column is for humans reading your card, not for machines parsing the URL. When you have multiple pages, each card captures one address, so you can compare them side by side and notice whether two cards share the same domain but differ in path, or whether a query parameter appears on one card but not another.
Keep the card format simple enough that you will actually maintain it. A plain text file, a spreadsheet row, or a note in your project management tool all work. The important thing is that each address gets its own entry with the same set of fields, so that when you return weeks later you can immediately see what each part was intended to do without having to re-analyze the string from scratch.
Verifying Your Card by Hand
Check your description card against the actual address string by copying the full URL into a blank line and marking each boundary character by character. Start from the left: identify where the scheme ends (at the colon and double slash), where the domain ends (at the first single slash after the authority), where the path ends (at the question mark or hash, whichever comes first), where the query ends (at the hash or the end of the string), and where the fragment begins (immediately after the hash). This manual walk-through catches typos and misplaced delimiters that are easy to overlook when you only glance at the address.
Record any discrepancy you find between your card and the actual string. If the card says the path is /notes/first-page but the copied string shows /notes/firstpage without the hyphen, update the card immediately. Small differences like a missing hyphen or a capital letter in the wrong place can lead to a completely different resource or an error, depending on how the server is configured. Do not assume the server will be forgiving about such differences.
Use a second pass to verify the query parameters separately. List each key-value pair on its own line and confirm that the keys match what you documented. In our example there is only one pair, view=compact, but real projects often accumulate several. If you find a parameter on the card that is not in the string, or a parameter in the string that is not on the card, resolve the mismatch before you share the address with anyone else.
Step 1
Copy the full URL from your browser address bar or your notes into a blank text line, ensuring no characters are trimmed or added.
Step 2
Mark the boundaries: place a space or visual separator after the scheme, after the domain, before the question mark, and before the hash.
Step 3
Compare each marked segment against the corresponding field on your description card and note any differences.
Step 4
Update the card or the address so both match, then repeat the check once more to confirm the correction.
Keeping Your Address Record for Future Reference
Store your completed cards in a location you will revisit when writing content, setting up navigation, or explaining your site to others. The value of the record is not just in the initial creation but in having a reliable reference when questions arise later. If a collaborator asks which URL to link to, you can point to the card rather than reconstructing the address from memory. If you need to update a path because the site structure changed, the card shows you exactly which component to revise.
Decide for yourself how detailed the record needs to be. For a single-page personal site, one card may be all you ever need. For a project with multiple sections, you might create a card for every public-facing page and keep them together in one file. The level of detail is your choice based on the complexity of your project and how often you expect to reference the addresses. There is no external requirement dictating a particular format or quantity.
When your site eventually launches, the cards become a quick checklist for verifying that every address you documented actually resolves as expected. You can visit each one, confirm the content matches the purpose you wrote down, and flag anything that looks wrong. This final pass is a simple habit that catches issues before your audience encounters them, and it costs nothing more than a few minutes of careful reading.
Frequently asked questions
Is the domain name the same thing as the URL?
No. The domain name identifies the web server, while the full URL specifies the exact resource on that server, including the path, optional query parameters, and optional fragment. The domain name is one component within a URL.12
Does changing the fragment part of a URL request a different page from the server?
No. The fragment identifier, which appears after the hash symbol, is never sent to the server with the request. It only tells the browser where to scroll within the document that has already been retrieved.2
Do I need to understand every possible URL format before launching my site?
No. There are extra parts and rules regarding URLs, but they are not relevant for regular users or web developers building functional sites. Understanding the scheme, domain, path, query, and fragment covers what you need for planning and sharing your own addresses.2