.com Wholesale Fee Rises 1 Nov: Check Your Domain Renewals
The .com registry fee rises to $10.97 on 1 November 2026. Here is how to check each domain's real expiry date, renewal price and auto-renew in 20 minutes.
The short answer
From 1 November 2026, Verisign raises the registry-level wholesale fee for new and renewed .com domains from $10.26 to $10.97 a year; .net follows on 1 March 2027 ($10.91 to $12.00). Your registrar sets the retail price you pay, so check its renewal page and invoice. The bigger risk is a missed expiry, so look up each domain's expiry date with RDAP or ICANN Lookup, confirm auto-renew and your notice email, and set reminders.
Reading options
On this page
On 1 November 2026, the registry fee behind every new and renewed .com domain goes up from $10.26 to $10.97 a year. That is the wholesale fee Verisign charges registrars, not the price you pay, and your registrar decides what, if anything, changes on your invoice. The useful move this week is a calm 20-minute check of when each of your domains expires, what your registrar will charge, and whether auto-renew is really on.
Here is the part most people miss. The price is rarely what takes a site offline. An expired domain is. When a domain expires and nobody renews it, the registrar may have to cut its DNS for a period before deletion, and your website and email stop working with it.
By the end of this guide you will have a list of every .com and .net you own, the real expiry date for each one straight from the registry, and reminders in your calendar for the dates that matter.
What the .com wholesale fee actually is
Think of a domain like a flat you rent through an agent. The building owner (the registry, Verisign for .com and .net) sets a base rent. The agent (your registrar, the company you pay) adds its own margin, service and discounts, then sends you the bill.
Verisign announced on 23 April 2026 that it "will increase the annual registry-level wholesale fee for each new and renewal .com domain name registration from $10.26 to $10.97 effective Nov. 1, 2026." That is a rise of $0.71 per domain per year at the registry level.
Why this matters: the announcement is about the base rent only. It does not say what any registrar will charge you. Some registrars may change retail prices, some may not, and some may change them at a different time. The only price that counts for you is the one your own registrar shows on its renewal page and on your invoice.
.net has its own timeline. In an 8-K filing dated 27 August 2026, Verisign reported that the .net wholesale fee goes from $10.91 to $12.00, effective 1 March 2027. So if you hold .net names, the same check is useful, with a later date in mind.
Heads up: this guide is about domain renewals. If your worry is a hosting plan that renews at a higher price, read the hosting renewal invoice check instead. That is a different bill from a different kind of company.
Before you start
You do not need special skills for this. You need access and about 20 to 30 minutes.
- Login to every registrar account where you hold domains (old ones too, people forget these)
- Access to the email inbox your registrar sends notices to
- A plain text file or a spreadsheet
- A terminal with
curlinstalled - Optional:
jq, a small tool that reads JSON, orpython3, which does the same job - A calendar app for reminders
Risk level: very low. Every step here is read-only until you choose to change an auto-renew setting or pay for a renewal. You will not touch DNS records or nameservers.
Quick tip: if you do not use a terminal, skip the commands. The ICANN Lookup website shows the same registry data in a browser.
Step-by-step: check every .com and .net you own
Step 1: List every domain in one place
Start with a simple list. You cannot check what you have forgotten you own.
Open each registrar account and copy every domain name into a text file, one per line. Include domains you only use for redirects or email. Those are the ones that expire quietly.
Here is what the file should look like, saved as domains.txt.
example.com
example.netIf you prefer a spreadsheet, use these columns: domain, registrar, expiry date, auto-renew on or off, renewal price shown, notice email. You will fill in the rest in the next steps.
Made-up example: Sara runs a small bakery and thinks she owns one domain. When she checks, she finds the shop .com, a .net her nephew bought "to protect the brand" and an old campaign .com that forwards to the shop, spread over accounts under an email address she rarely opens. This step is where that kind of surprise turns up.
Step 2: Look up each expiry date with RDAP
RDAP (Registration Data Access Protocol) is the standard way to read domain registration data. ICANN says that as of 28 January 2025, RDAP is "the definitive source" for gTLD registration data "in place of sunsetted WHOIS services." In plain words, RDAP is the modern replacement for WHOIS, and it returns clean JSON instead of loose text.
Why use the registry? It is the final record of when your domain expires.
This command asks Verisign's RDAP server for the record of a .com domain. Replace example.com with your own domain.
curl -s https://rdap.verisign.com/com/v1/domain/example.comYou will get a long JSON response. The part you care about is the events list. When I ran it on 28 October 2026, it looked like this.
"events": [
{ "eventAction": "registration", "eventDate": "1995-08-14T04:00:00Z" },
{ "eventAction": "expiration", "eventDate": "2027-08-13T04:00:00Z" },
{ "eventAction": "last changed", "eventDate": "2026-08-14T08:01:43Z" },
{ "eventAction": "last update of RDAP database", "eventDate": "2026-10-28T18:15:42Z" }
]This command prints only the expiry date, using jq to pick the expiration event.
curl -s https://rdap.verisign.com/com/v1/domain/example.com | jq -r '.events[] | select(.eventAction=="expiration") | .eventDate'You should see a single line like this.
2027-08-13T04:00:00ZIf you do not have jq, this command does the same with Python.
curl -s https://rdap.verisign.com/com/v1/domain/example.com | python3 -c 'import json,sys; d=json.load(sys.stdin); print([e["eventDate"] for e in d["events"] if e["eventAction"]=="expiration"][0])'For a .net domain, change com to net in both places in the URL. This command checks a .net name.
curl -s https://rdap.verisign.com/net/v1/domain/example.net | jq -r '.events[] | select(.eventAction=="expiration") | .eventDate'Now check your whole list in one go. This small script reads domains.txt, picks the right Verisign RDAP path from the ending (.com or .net), and prints each domain with its expiry date.
while read -r d; do
tld="${d##*.}"
exp=$(curl -s "https://rdap.verisign.com/${tld}/v1/domain/${d}" | jq -r '.events[] | select(.eventAction=="expiration") | .eventDate')
echo "${d} ${exp:-not found}"
done < domains.txtThe output should look like this, one line per domain.
example.com 2027-08-13T04:00:00Z
example.net 2027-08-30T04:00:00ZHeads up: this script only works for .com and .net, because both run on Verisign's RDAP server. For other endings, use ICANN Lookup below.
Prefer a browser? Open ICANN Lookup, type your domain and run the search. ICANN describes it as a tool to "look up the current registration data for domain names." Look for the expiry date and the registrar name in the results.
Copy each expiry date into your list. The time is in UTC, so a domain that expires at 04:00 UTC may expire on the evening before in some time zones.
Step 3: Check the registrar account settings
Now go back to each registrar account. Menu names differ between registrars, so look for a domain list or "My domains" area and open each domain's settings. You are looking for these details.
- Auto-renew: on or off, for each domain separately
- The payment method attached to auto-renew, and whether that card has expired
- The renewal price the registrar shows for one year, and for several years if offered
- The contact email that receives renewal and expiry notices
- Any separate price for renewal after expiry, or for restoring a deleted domain
Why this matters: ICANN's Expired Registration Recovery Policy (ERRP) says registrars must make their renewal fees, post-expiration renewal fees (if different) and redemption or restore fees available, and section 4.1.1 says they must display them on their website. So these prices should be findable. If you cannot find them, ask the registrar's support where they are.
Quick tip: the contact email matters more than it looks. Under section 2.1.1 of the policy, the registrar must send at least two notices before expiry, one about a month before and one about a week before. If those go to an old inbox, you will never see them.
Write the renewal price and the auto-renew state into your list. Note the date you checked, because prices can change.
Step 4: Decide whether to renew early, and for how long
Many people ask: should I renew now, before 1 November, to "beat" the increase? The honest answer is that it depends entirely on your registrar.
The wholesale rise applies at the registry level from 1 November 2026. How your registrar prices a renewal you buy today, and whether it changes retail prices at all, is the registrar's own decision. Nobody outside your registrar can promise you the old price.
So compare these numbers, which you can see for yourself.
- The renewal price your registrar shows today, for one year and for several years.
- Any notice your registrar has sent you about price changes.
- Your last renewal invoice, to see what you actually paid before.
If you decide to renew for several years, check the cart total before paying, then check the invoice afterwards. The invoice should show the domain, the number of years and the price. If it does not match the price on the renewal page, ask support straight away.
But what if the domain expires soon anyway? If the expiry date is within the next month or two, renewing now is simply good practice, whatever happens to prices. ICANN's own advice to registrants is to "always renew your domain name well before it expires."
But what if I want to move the domain to a cheaper registrar? You can, but transfers have rules and locks of their own. Read the domain transfer and 60-day lock guide first, and do not start a transfer in the last days before expiry.
Quick tip: the same habit that protects you from hosting surprises works here. The guide to reading a hosting renewal price explains how intro prices and renewal prices differ, and many registrars use the same pattern for domains.
Step 5: Read the status values and set calendar reminders
The RDAP response also lists status values. These are short labels that tell the registry what is allowed for your domain. This command prints them.
curl -s https://rdap.verisign.com/com/v1/domain/example.com | jq -r '.status[]'For example.com on 28 October 2026, the output was this.
client delete prohibited
client transfer prohibited
client update prohibitedVerisign's RDAP writes the codes as lowercase words with spaces. They are the same as the EPP codes ICANN lists in camel case, such as clientTransferProhibited.
Here is what the common ones mean, based on ICANN's status code page.
client transfer prohibited: the registry will reject transfer requests. This is the normal "locked" state and is good.client delete prohibitedandclient update prohibited: extra protection against deletion or changes.auto renew period: the domain has expired and was renewed automatically, and is inside a grace period.redemption period: the registrar asked the registry to delete the domain. Act now.pending delete: deletion is underway.client holdorserver hold: the domain is not active in DNS, so the site and email will not resolve.
If you see anything with "redemption", "pending delete" or "hold" on a domain you care about, stop reading and contact your registrar today.
While you are in the RDAP data, this command prints the nameservers and the registrar's IANA ID. It is a quick way to see which company really holds each domain.
curl -s https://rdap.verisign.com/com/v1/domain/example.com | jq -r '.nameservers[].ldhName, (.entities[] | select(.roles[]=="registrar") | .publicIds[].identifier)'The output lists each nameserver, then the registrar ID number.
ELLIOTT.NS.CLOUDFLARE.COM
HERA.NS.CLOUDFLARE.COM
376If the nameservers are not what you expect, see the nameserver update guide before you change anything.
Now set reminders. This command works out the dates 30 days and 7 days before an expiry date, using GNU date on Linux.
date -u -d "2027-08-13 -30 days" +%F
date -u -d "2027-08-13 -7 days" +%FThe output is two dates.
2027-07-14
2027-08-06Put both in your calendar for each domain, with the registrar name in the title. On macOS, date works differently, so just count back in your calendar app. Add one more reminder about 60 days before expiry, so you have time to fix a card or a login problem calmly.
Step 6: Understand what happens after expiry
Knowing the sequence means a broken website will not catch you by surprise. Here is the order of events for a .com or .net that is not renewed, based on ICANN's policy and registrant guide.
- Before expiry: at least two reminders, about one month and about one week before (ERRP section 2.1.1).
- Expiry day: the registration period ends.
- After expiry, if not renewed: the registrar must send at least one more notice "within five days after the expiration of the registration" (section 2.1.2).
- Auto-renew grace: ICANN's registrant page says a registrar may offer "a 1-45-day period during which you may renew an expired domain name", and that "This may come at a fee".
- DNS interruption: for registrations deleted eight or more days after expiry, the registrar must interrupt DNS "for at least the last eight consecutive days" that you can still renew (section 2.2.3). ICANN warns this will cause services "such as a website or email service to no longer work."
- Deletion and redemption: gTLD registries (except sponsored ones) "must offer a Redemption Grace Period" of 30 days immediately following the deletion (section 3.1). You can still get the domain back through your registrar, often for a restore fee.
- After redemption: the domain can be deleted for good and become available to others.
Why this matters: step 5 is the one that confuses people. Your site goes down, your email bounces, and you may think the server broke. In fact the domain is in its final renewable days. Renew, and the registrar must restore your DNS settings (section 2.2.6).
Heads up: the exact length of each stage, and the fees for late renewal or restore, depend on your registrar. Read their own terms. ICANN's registrant page says it clearly: "be sure to read your Registrar's Terms of Service carefully."
How to check it worked
Once you have renewed a domain or confirmed auto-renew, check the registry, not only the registrar screen.
Run the expiry command again. This shows the new date after a renewal.
curl -s https://rdap.verisign.com/com/v1/domain/example.com | jq -r '.events[] | select(.eventAction=="expiration") | .eventDate'What you should see: the expiry date has moved forward by the number of years you paid for. If you renewed for one year, a date in 2027 becomes the same date in 2028.
Then do these checks.
- Your invoice shows the domain, the years and the price you expected.
- Auto-renew shows as on, if that is what you chose.
- The status list does not include
auto renew period,redemption period,pending deleteor a hold status. - Your spreadsheet has an expiry date and two calendar reminders for every domain.
- You have received the registrar's emails at the right address. Search your inbox for the registrar name to confirm.
Quick tip: if the date has not moved yet, wait a little and run the command again before contacting support.
Troubleshooting
The command returns nothing, or "not found"
Symptom: the script prints not found, or curl returns no expiry date. Likely cause: a typo in the domain, or the domain is not a .com or .net, so Verisign's server does not hold it. Fix: check the spelling, and for other endings use ICANN Lookup in the browser.
"jq: command not found"
Symptom: your terminal prints jq: command not found. Likely cause: jq is not installed. Fix: use the python3 version of the command from Step 2, or install jq with your system's package manager.
The registrar dashboard and RDAP show different expiry dates
Symptom: your registrar shows one date and RDAP shows another. Likely cause: a recent renewal that has not reached the registry yet, or a registrar showing its own "renew by" date. Fix: trust the registry date for the actual expiry, and the registrar date as your deadline. If they still differ a day after a renewal, ask support.
You cannot find the renewal price
Symptom: the domain page shows "Renew" but no price until checkout. Likely cause: the registrar shows fees on a separate pricing page. Fix: look for a pricing or fees page, since ERRP section 4.1.1 requires renewal and restore fees to be displayed on the registrar's website. If you still cannot find it, ask support for the one-year and multi-year renewal price in writing.
Auto-renew is on, but the renewal failed
Symptom: an email says the renewal payment failed. Likely cause: an expired card, a bank block on a foreign charge, or not enough account credit. Fix: update the payment method and renew manually right away. Do not wait for the next automatic try.
The website and email stopped working, and the server looks fine
Symptom: the site does not load and mail bounces, but your hosting panel shows everything running. Likely cause: the domain expired and the registrar interrupted DNS. Fix: check the status and expiry date with RDAP, then log in to the registrar and renew. Your DNS settings should come back after renewal.
The domain is in the redemption period
Symptom: RDAP shows redemption period. Likely cause: the domain was deleted after expiry. Fix: contact your registrar at once and ask for a restore. ICANN notes "your registrar may charge a fee for this service."
When to ask your registrar or a developer
Ask your registrar if a price on the invoice does not match the renewal page, if you cannot change the notice email, or if a domain shows a hold status you did not set. Ask a developer if your site still fails after a renewal and the nameservers look different from what your host gave you.
The one message worth forwarding
Copy this and send it to whoever manages your domains, a co-founder, an agency or a family member who bought one "for safekeeping".
Hi, quick domain check. The .com registry wholesale fee goes from $10.26 to $10.97 on 1 November 2026 (Verisign announcement), and .net goes from $10.91 to $12.00 on 1 March 2027. Retail prices are up to each registrar. Could you please send me, for every domain you manage for us: the registrar, the expiry date, whether auto-renew is on, the renewal price shown, and which email address gets the renewal notices? I'll put them in one sheet with calendar reminders 30 and 7 days before expiry. Thanks!The price change is small and the registrar decides how it reaches you, but a missed expiry date can take your site and email offline, so the expiry date is the number to get right.
Reader questions
Will my .com renewal cost $10.97 from 1 November 2026?
No, $10.97 is the wholesale fee Verisign charges registrars. Your registrar sets the retail price, so check its renewal page and your invoice.
Does the .net price change at the same time?
No. Verisign reported that the .net wholesale fee goes from $10.91 to $12.00 effective 1 March 2027.
Is RDAP the same as WHOIS?
RDAP is the newer protocol for registration data. ICANN says that since 28 January 2025 RDAP is the definitive source for gTLD registration data in place of sunsetted WHOIS services.
Can I still renew my domain after it expires?
Often yes, for a period that depends on your registrar, and possibly for a fee. ICANN says registrars may offer an Auto Renew Grace Period of 1 to 45 days, and gTLD registries offer a 30-day Redemption Grace Period after deletion.
Why did my website and email stop working after expiry?
Under ICANN's Expired Registration Recovery Policy, for registrations deleted eight or more days after expiry the registrar must interrupt DNS for at least the last eight days they can be renewed, where the registry permits. Renewing should restore your DNS settings.
Is 'client transfer prohibited' a problem?
Usually not. It is the normal transfer lock that tells the registry to reject transfer requests, which protects your domain from unwanted transfers.
Does renewing early lock in the old price?
That is your registrar's decision, not the registry's. Compare the price your registrar shows today with your invoice before you pay.
Was this guide helpful?
Help us make the next update better.
Sources & further reading
- Verisign press release, 23 April 2026: .com wholesale fee increase
- Verisign Form 8-K, 27 August 2026: .net wholesale fee
- Verisign RDAP record for example.com
- ICANN Lookup
- ICANN Expired Registration Recovery Policy
- ICANN: About the Expired Registration Recovery Policy for registrants
- ICANN Update: Launching RDAP; Sunsetting WHOIS
- ICANN: EPP status codes
Originally published . About our editorial updates.


