Sales/Auction models for the permanent registrar


I like reverse Dutch auction. Isolating and assigning starting values may prove to be a challenging endeavor though. I guess everything could start at a high price, but I don’t think I would wait around for MyName9000.eth because it is probably not worth anything (unless I made it worth something through marketing and promotional efforts).

I think something like the RDO would be a step in the right direction and would satisfy a “a notice” benefit that information about valuable names being available would make it’s way to the right people in a position to register the .eth name.


Isolating and assigning starting values may prove to be a challenging endeavor though.

Starting values would not be manually assigned, but all would start unreasonably high.

In our first launch names had a deterministic launch date (which was great as it took the land rush stress away), so you’d need to wait any names. The only difference here is that you’d need to wait for your name to come down from a billion dollar, to only a few million dollars, to a few dollars until it costs almost nothing. All names unclaimed after six months become a one click purchase for minimum price.

One thing I prefer about the increasing bid war that isn’t present on the dutch auction is that your bid is not necessarily what you pay for. Since you pay only the next-to-last bid price, your bid wouldn’t be necessarily your purchase price (although that creates issues in its own, as you can block further bidding by making unreasonably high bids)


I like the simplicity of a dutch auction. I don’t see a good way to implement it here, though, without delaying nearly all registrations by an arbitrary period. Setting all domains to a high price and having them decrease over time means that it would be an arbitrarily long time before people wanting to register ‘cheap’ domains could use them.


without delaying nearly all registrations by an arbitrary period.

Wasn’t having a random start time on each auction also delaying nearly all registrations arbitrarily? We could also add a random factor there and change the curve but I don’t see a problem in having all domains be very expensive for the first 4 weeks. We could also make that when a name is released back, the dutch auction is restarted from the price it was bought before, this would allow someone who thinks they overpaid it to release a name, wait some time and if nobody else gets it, buy it back cheaper.


Yes; I misunderstood the original proposal. I thought you were suggesting some form of dutch auction for ongoing allocation of names, not just for initial release.

As a way of allocating names on initial release, it’s reasonable, though it suffers from a non-optimal “ultimatum game” issue, where people bid the most they think someone else is willing to pay, rather than the most they’re willing to pay.

For initial allocation, perhaps we could continue to use a vickery auction, but on a one-off basis, with long bidding and reveal periods (2-4 weeks each)?


I’m a strong supporter of a single system for all names. In that sense, all names would be a dutch auction but we could assume that every available name that has not been purchased yet would go for the minimal amount. But I understand that, given that names are hashed, it’s hard to differentiate the starting date for newly released and the others, so we would either have to add that logic in or we would have to make all names start the same high price. In that sense a simple bid works for everything.

Can you do a Vickrey Auction with a single transaction? I feel that right now the advantages of quick and simple method with a single click outweigh the price efficiency of a blind auction.


A vickery auction will require two actions, but it’d only be necessary for newly released names. So the process would go something like this:

  1. Permanent registrar announced and deployed, but not activated. Permanent registrar supports only flat rate purchasing.
  2. Auction contract for short names deployed. Bidding begins (4 weeks)
  3. Reveal begins (4 weeks)
  4. Permanent registrar activated. Owners of auctioned names and names from the interim registrar can transfer them to the permanent registrar.


That might cut it down to two transactions, but still requires keeping secret data on your machine and risking losing all your money if you lose a deadline, both things our users really hated.

Since this whole process would take 8 weeks anyway, we could simply set the Dutch Auction to last for that period and it would take about the same… It could be:

  1. second version (not a fan of the word ‘permanent’) is announced and deployed but not activated. Supports same auction model for everyone.
  2. Dutch Auction for shorter names (I would support just reducing 1-2 letter this year and not opening the flood gates to 1-4 letters yet) begin (during 8 weeks)
  3. When all the dutch auction reach the price of current minimum purchase, registrar is activated
  4. Any old names that are released will enter a dutch auction starting from their previous price

OR if we go for normal auctions with a 24h waiting period

  1. second version is announced, deployed and activated.
  2. all names, old and shorter can go for a one click minimum bid + 24 hour waiting period


True; however, I think these issues will be significantly less severe given the one-off nature of the auctions and the tooling and docs we’ve developed since the launch.

My objection to a dutch auction is mostly the inefficiency in pricing.

I’d personally rather not do that - if the auction is a one-off thing, we don’t have to have the auction code there permanently, only for launch.


if the auction is a one-off thing, we don’t have to have the auction code there permanently, only for launch.

Good point. I’m not such a big fan of Dutch Auctions too. I do think the normal bid + 24h waiting period could be a good process for ongoing names. The question that we keep circling back to is: is it worth it? How often are names that stayed dormant for years suddenly have a competitive market?

Why don’t we look at it with data? I know they’re a tiny percentage but what are the kinds of names that have been bought for a competitive price since the soft launch ended? I know it’s a tiny percentage, but what are they? Trending topics? People who watch opened markets and suddenly become interested in them? People accidentally bidding twice on their own names? The answer to this would greatly help this debate.

Also: what it means to “buy” a name in the new registrar? Since we are agreeing that locking up capital isn’t that efficient, what will it become? Burned? Prepaid rent? Goes to a future ENS foundation? Something else?


Good idea. I’ll put something together to harvest events and get some lists for the domains we have in our dictionary.

Burned or sent to the ENS org. You’d need to prepay rent in addition to that to actually keep the name.


In addition? I’d say that any money spent/burned should definitely count for the rent


The simplest way to model rent, in my mind, is by requiring a person to prepay, with rent continuously deducted from the account, and with the user able to deposit or withdraw as desired. In that model, at least, you can’t really use the auction price as prepayment, as they could just immediately withdraw it again.

Also, it takes winning the auction from a capital expense to a matter of “how long are you willing to prepay for this domain?”


couple suggestions/experiences in registering approx 80 domains. these probably slowed adoption:

  1. needed reliability and standardization. early metamask and other undefined problems, ICOs bogging down network, people not backing up and then losing their json files and even the names they bid on by wiping cache to try to fix problem, and hence losing their ETH being unable to reveal, non-commonality of json fields across, MEW, imToken - should be made common and consistent in case one system doesn’t work, the other can be used.
  2. user friendly additions: If for example, after you bid on a domain, a popup occurred that said, “Add this reveal date to your calendar so you don’t miss it and lose your ETH?” and, saying yes, would save to google, outlook, etc. Maybe increased user messages stating that you must have certain information in json file to reveal and that if you clear cache or your computer breaks, you will loss of ETH unless you save that info. Some utility/ability to save secrets to an off line place so you can securely have your information in case you need to recover the names and bids.


There was some confusion as initially starting and bidding occurred at same time in same transaction using with metamask. Later I found those transactions seemed to be split or it failed to start even if you bid or vice versa. I don’t know why they were later split.

The first go-around of >7 characters was intended to give the knowledge/experience to ENS developers on how to improve so then the <7 characters so it would be smoother with less problems. That’s fine. I’m not privy to all the problems experienced but the rolling auction seems to be another test/experiment, possibly resulting in new problems/issues. Also, everyone who has registered a name is already now familiar with the vickery. I kinda feel the issues in the vickery are solvable with more clear explanations, better reliability, more consistency across ENS platforms/apps and user help/popups to make understanding more intuitive to new users. Maybe a beginner mode where it walks you thru the registration process in a user friendly way, later you can chose expert mode to do it without the pop-ups.


Hi all,

Just catching up on this thread. To summarize, among the few participating in the discussion, it seems that there was some common agreement that:

  • there should be auctions for newly released names only;
  • in weighing the pros and cons of Dutch vs Vickery auctions, Vickery auctions are the better candidate for this purpose;
  • the auction would start with bidding (4 weeks), then reveal (4 weeks) and during this period the Permanent Registrar would be announced and deployed;
  • for names already released, a first come first serve approach is fine;
  • after the auction, the Permanent Registrar is activated and all names, old and shorter are available for a one-click minimum bid with 24 hour waiting period.

Do the above points, or others not listed, need further discussion? What do those among the wider WG participants think?

The discussion also touched on some interesting problems such as what happens when a popular domain name generates a lot of on-chain transactions and if there is a need to research potential off-chain solutions. But, rather than pursue that discussion here, since it’s a different topic, I’ll start a separate thread.


I wonder if Radical Markets could fit in here. I will do more research and come back with a write up here.

Meanwhile this episode might give you an idea what I’m talking about: Glen Weyl: Radical Markets – Uprooting Capitalism and Democracy for a Just Society
Glen’s good example of good use case for radical markets is the wireless spectrum or land. I think the same could be applied for domain names.