Every dice set we make at Fateseeker is one of a kind. One design, one set, done. So when a set went viral and hundreds of people wanted the same piece, the fairest answer was obvious: auction it.
The platform problem
Etsy is where we normally sell dice, and it does the unglamorous parts well: listings, payments, shipping labels. Auctions, though? Nothing. There is no bidding feature and no countdown, and no way for buyers to compete over a single item.
eBay does auctions, but the fees are steep and the whole experience feels like it froze around 2005. Instagram auctions are apparently a thing too. Everything we read about them boiled down to comments as bids and crossed fingers, which did not exactly fill us with confidence.
If you sell one-of-a-kind or small-batch work, this gap probably sounds familiar. Hold that thought, because it is the reason this article has an ending beyond "our auction went fine."
We had a domain, a server and fifteen-plus years of development experience between us. So we built our own.
Six days, from zero to live
Click to expandThe brief we set ourselves: the auction had to look like it belonged on fateseeker.art, work on phones first, and handle everything from product page to registration to reminder emails to the bidding itself. Usability beat visual flourish wherever the two collided. And it had to stay maintainable after the adrenaline wore off, because this was never meant to be a one-off. Fateseeker runs on an ageing CMS we plan to replace anyway, so we rebuilt the design with modern tooling (Tailwind CSS and Next.js) for a fast development cycle.
We started with click-through dummies of every page and every email. No functionality, just layout. Sounds slow. It wasn't. Seeing the whole flow the way a bidder would see it meant we caught confusing moments while they were still cheap to fix.
Then the real build: registration, bidding, and an automated setup that tests every change and can push it live in under a minute. That last part sounds like a developer luxury. Remember it, because it saved the launch.
Registration: one email field
Click to expandSigning up had to be painless, because every extra form field gives someone a reason to close the tab. We landed on email only: type your address, click the confirmation link, you're in. The link doubles as a one-time login. No passwords, no profile setup.
There is a catch, of course. A one-time link won't follow you from your phone to your laptop, and it dies with a deleted cookie. For a 48-hour auction where most people bid from a single phone, we could live with that. Shipping and payment details would only be collected from the winner once the auction ended.
The registration page went live hours before the bidding system was working. Over 40 people signed up for a tool that was still being written. None of them noticed.
Then the auction started
Click to expandWe worked through the night before launch and were still stress-testing with a handful of handpicked testers minutes before opening. Then the doors opened, and the first real bids arrived within seconds.
Not everything held up. Reminder emails went out one at a time, so the first batch took several minutes to reach everyone. Past 20 bids, the overview page grew uncomfortably long; we had never tested with that many. One bidder messaged us on Instagram because they couldn't tell who was currently winning. And the admin area needed a round of tweaks once real data started flowing through it.
We fixed all of it live, mid-auction, across four deploys. The site was offline for less than four seconds in total, and no bidder noticed a thing. This is what that fix-to-live-in-a-minute setup was for.
48 hours of bidding
Click to expandThe auction ran for two full days and far exceeded our expectations. Credit where it belongs: the crowd came from Fateseeker's Instagram, where the set had gone viral. The platform's job was to catch that attention and turn it into bids without losing anyone along the way. It did. The final tally: 44 registrations, 30 bids from 10 active bidders, and 18 newsletter subscribers.
We had built an anti-sniping rule where any bid placed in the final three minutes extends the auction by another three. Our testers confirmed it worked. Then the last real bid landed half an hour before the deadline, and the extension never fired. Next time.
Payment went through Etsy. We created a private listing for the winner, sent them the link, and gave them a few days to complete the purchase. For us this kept the legal side simple: no tax receipts or refund policies to sort out on day six, and no payment provider to integrate. For the buyer it meant an extra step, and Etsy took a cut for essentially playing payment gateway. That works once. Before the next few auctions, it needs a real solution.
What we learned
Click to expandFor us as developers, one lesson towered over the rest: being able to fix and deploy in under a minute is what kept four launch-day problems small. Ship something built in six days and problems will surface. What matters is how fast you can respond.
For us as a shop, the lessons were more interesting. Friction decides everything: over 40 signups from nothing but an email field and a confirmation link. Ask people to create an account with a password and a good chunk of them walk.
An auction also turned out to be a marketing event with a sale attached. One product got 48 hours of sustained attention, and we came out of it with a bigger mailing list than we went in with.
And marketplace fees are a choice. The only cut anyone took was Etsy's, at the very end, for handling payment. Everything before that ran on our own domain.
What comes next
Another auction is already in the works, and the platform is getting upgrades first. The email system gets a proper queue so notifications arrive within seconds. The ending will be fully automated too: the winner receives an email, enters their details on the platform, and pays directly there. No more Etsy detour.
The bigger plan is to cut the platform loose from Fateseeker entirely and open it up to other small businesses. We are building it as a set of customisable web components that drop into any existing website. The auction runs under your domain and looks like your shop, because it is your shop. Your audience brings the demand; the platform takes care of the auction.
For that, we are looking for a small group of makers and small businesses to shape it with us. Early access, your requirements on the table, and a direct line to the two people building it. If you sell one-of-a-kind or small-batch work and want to auction it without eBay's fees or comment-thread chaos, send us a message or reach out on Instagram, through either the Glintworks or Fateseeker channel. Tell us what you sell and how an auction would need to work for you.