Overview
CODAworx is a company in Madison, Wisconsin that connects the people who commission public art (architects, interior designers, developers, city and corporate buyers) with the artists who make it. It is the leading platform for public art commissions. CODAmarket gave those same artists a second way to earn: a marketplace for finished work, not commissions, where they could sell directly to collectors, designers and businesses.
I was recruited into the founding team that conceived, built and launched it, and became a co-founder. I owned every stage from concept to commercial launch, on both the buyer-facing marketplace and the operations behind it, and I set the platform’s pricing. Artist support was mine too: inventory management, payments and billing, training, troubleshooting and gathering feedback from the people using it. I led a cross-functional team and drove the technical work, with a focus on integrating machine learning.
Problem and research
Who we built it for
Buyers furnishing a space
Interior designers, architects and corporate, hospitality, healthcare and real-estate buyers sourcing finished work for a lobby, an office or a building. They need the size, the price and the delivery date up front.
Collectors and galleries
People and dealers buying original work. They browse by category and artist, follow the creators they like and want to trust the piece will arrive safely.
Creators
Sculptors, painters, glass, fiber and mixed-media artists, photographers and technology artists, most of them small studios. They want to sell without running a shop: listing, pricing, payments and shipping.
Selling finished work directly meant tools many of these artists didn’t have yet: an inventory, a price for each piece, photos and categories that buyers could search. And buyers arrived with very different tastes and budgets, so a single catalogue order served almost nobody well. Those two needs shaped most of what follows.
Getting the numbers in place first
Before we changed anything I set up funnel analytics, cohort reports and an NPS survey, and agreed a regular experimentation cadence of A/B tests with the team. From then on each change went out as an A/B test with one primary metric and a couple of guardrails, so we could see if a win on one number was costing us somewhere else.
Because we instrumented first, most arguments about what to do next could be settled with data we already had.
| Change | What we were trying to move | What we watched so it didn't backfire |
|---|---|---|
| Creator tools | Time to list a piece, active listings | Listing errors, support tickets |
| Personalized recommendations | Click-through on recommended artworks, repeat purchases | Buyer NPS, how evenly views spread across creators |
| Self-serve onboarding | 90-day user retention | Time to first listing, support tickets |
| Order workflow | Fulfillment time | Order errors, payment disputes |
Solution
What we launched
The first version of the marketplace was deliberately simple. Three categories (Sculpture, Art for the Wall and Tech Art) organized the catalogue. Every creator got a storefront linked to their CODAworx profile, with the pieces for sale alongside the public work and press behind them. A creators directory, sortable A to Z and filterable by type of work, let buyers browse by artist. Artists joined through a “Sell your artwork” path. Trade features such as purchase orders, invoicing and project folders were out of scope for the first releases.


Illustrative.
Tools that let artists run a shop
During the pilot, artists sent us their inventory in spreadsheets and we listed it for them. At launch that moved into each creator’s storefront. Creators got an inventory they managed themselves, with bulk upload for a whole body of work, a listing editor to categorize each piece (category, medium, dimensions and style tags), a pricing tool that showed comparable listings as a reference (the artist always set the price), and availability and shipping details so buyers saw realistic delivery dates. Orders and payouts sat on the same dashboard. Payouts went out after delivery, net of the platform commission set in the pricing I owned.
The time it took to list a piece fell by half, and creators kept their inventory current instead of waiting on us.


Illustrative.
Showing each person what's relevant to them
A collector looking for glass and a designer furnishing a hotel lobby should not see the same home page. I led the recommender work with our engineers. It personalized the artworks and artists each user saw across the whole site: a personalized “For you” feed on the home page, related pieces on every artwork, and artists to follow.
It was a hybrid of two methods. The content-based part used each piece’s category, medium, size, style tags and price range. The collaborative-filtering part learned from what similar people viewed, saved, followed and bought.
One guardrail mattered as much as the ranking: newer creators still had to get seen, so a few established studios couldn’t take every top spot. We tracked how evenly views spread across creators on every test.
Click-through on recommended artworks went up 40%, and repeat purchases went up 30%.


Illustrative.
- SignalsViews, saves, follows and purchases; each piece’s category, medium, size, style tags and price range
- RankingA hybrid of content-based and collaborative-filtering scores for each user and each artwork
- PlacementThe home feed, related pieces on every artwork page, and artists to follow
- GuardrailNewer creators still get seen; we tracked how evenly views spread across creators
Keeping people past their first weeks
Cohort data showed new creators stalling halfway through setting up their storefront, and new buyers leaving after a first visit. NPS comments said the same thing from both sides: people didn’t know what to do next. We replaced the open-ended setup with a self-serve checklist, added in-app guidance at the steps where people tended to stop, and sent personalized outreach when someone went quiet. Together, these doubled 90-day user retention.
We also gave creators an analytics view: how often their pieces were viewed and saved, what sold and where buyers came from. A creator who sees that their small works sell and their large ones only get saved knows what to list next.


Illustrative.
Fixing the back end
Nobody outside the company sees inventory, order or payment workflows, but they decide whether a marketplace delivers on its promises. I redesigned the inventory, RFP and transaction workflows one at a time and tested each change against real-time dashboards. Each order moved onto one page that the buyer and the studio both follow, from payment to delivery. Fulfillment time, from order to delivery including crating and freight, dropped 60%.
| Workflow | The problem | What changed |
|---|---|---|
| Inventory | Availability lived in spreadsheets and people’s heads | Creators kept availability and shipping details current in their storefront, so buyers saw realistic dates up front |
| Payments and billing | Payouts and invoices were reconciled by hand | Checkout, payouts and billing ran in one flow, with status the artist could see |
| Requests for quotes (RFPs) | Trade buyers asked for quotes on listed work by email | A Request a quote button on each artwork page sent the request to the studio, and an accepted quote became an order |
| Shipping and fulfillment | Crating and delivery were arranged over email | One order page for payment, crating, shipping and delivery that buyer and studio share |

How the platform works
There are two sides. Buyers find work through the three categories, the creators directory and a personalized feed. Creators have a storefront linked to their CODAworx profile, join through the Sell your artwork path, and manage their inventory, pricing and categories themselves.
In the middle, the recommender ranks artworks and artists for each user from what they and similar people viewed, saved, followed and bought, plus each piece’s category, medium, size, style tags and price. When a buyer checks out, one order page carries payment, crating, shipping and delivery for both sides.
Everything is measured from the start: funnel analytics, cohort reports, NPS and A/B tests with one primary metric and guardrails. Two loops close it. What people view and buy retunes the recommendations, and cohort data from creator and buyer setup drove the onboarding fixes.
Results
| Outcome | Result |
|---|---|
| Click-through on recommended artworks | +40% |
| Repeat purchases | +30% |
| 90-day user retention | Doubled |
| Time to list a piece | −50% |
| Fulfillment timeOrder to delivery, including crating and freight | −60% |
Artists who already used CODAworx for commissions gained a second way to earn from finished work.
How we worked
Everything above ran through one shared backlog and one experiment calendar. Engineers, designers, data and operations people worked off the same list, and each item had to name the metric it was meant to move and the guardrail it must not hurt. When two ideas competed, I asked which one would teach us more per week of effort. That usually favoured the cheap test over the elegant build.
A few habits kept a small cross-functional team moving. Every change that shipped had an owner and a written result, including the ones that failed. Artist support sat in the same conversations as engineering, so what creators told us in training and troubleshooting reached the backlog within days. We treated operations and pricing changes like product changes, with a hypothesis, a measure and a review.
What I'd do next
With more time I’d add pricing guidance built from past sales, so an artist could see what similar pieces actually sold for, not only what they were listed at. I’d add a mobile-friendly inventory view, since artists are often in the studio rather than at a desk. An AR preview would let a buyer see a piece in their own space before buying. I’d show an estimated crating and freight quote on the artwork page, before checkout. And I’d measure revenue per creator rather than listings, because that’s what keeps artists on a marketplace.
Looking back
- Setting up analytics before building anything meant most arguments about what to do next could be settled with data we already had.
- The onboarding changes did more for retention than any feature we built for established creators.
- Giving artists their own tools to list and price work mattered as much as bringing buyers in.
- Cutting fulfillment time was some of the most valuable work I did there, and almost nobody saw it.