Estimonia: AI Photo Valuation for Antiques
Estimonia is our own product. Upload photos of an antique, watch or piece of jewellery and get a USD value range, a confidence score and a written explanation. We built it and we run it. It has a Laravel 12 API that analyses photos with AI in the background, a web scanner and an auction house directory.
- Project
- AI product
- Our role
- Own product, end-to-end
- Platform
- Laravel
- Country
- Global
- Year
- 2026
The challenge
Most people just want to know if it's worth anything
Most people holding an inherited watch, clock or ring don't need a certified appraisal. They need a first answer: is this worth a specialist's time, or not? Appraisers are slow and expensive for that question. A normal image search shows listings, not a value.
An AI answer alone isn't a product
A vision model (AI that reads images) will happily name an object and quote a price. But the answer has to follow a fixed format, stay within set limits and be honest about uncertainty. It also has to handle blurry photos, messy backgrounds and things that aren't collectibles at all. And failed calls can't quietly cost money each time.
Nobody wants to sign up just to ask
Most people use it once and care about privacy. A sign-up wall before the first valuation would lose most of them. So the system had to work without an account, while still letting people keep what they scanned.
Our approach
One API behind the scanner
A Laravel 12 API (PHP 8.4, MySQL) powers the web scanner. The API is versioned and gives out anonymous Sanctum tokens, so a first scan needs no account. Anonymous users can create an account later without losing their items.
Valuations run in the background
Each upload of up to four photos creates a Scan. A background job (ProcessScanJob, run on Redis and Laravel Horizon) sends the images through Prism to OpenAI GPT-4.1 vision. The AI must reply in a strict JSON format. The reply includes a verdict on image quality with warning codes, the item's name and model reference, and its materials. It also gives a tight USD min/max range, confidence and rarity scores, and an explanation based on similar items. The job stays within the provider's rate limits. When a call fails, it tries again with longer waits each time. It then saves the result as an Item. Uploads are resized to 2000px before they are stored.
A clear view of cost and failures
Every AI call is logged with its token use, cost and outcome (success, rejected or failed). Spend is recorded before the reply is read, so broken replies still count. An admin dashboard shows daily spend, cost per scan, a budget forecast and money spent on rejected photos. Limits per IP address and per user protect the parts that work without an account.
Reuse instead of new pipelines
Later features run on the same Scan → Job → Item path instead of copying it. The estate-valuation flow uses it: it values a whole household from a batch of photos, shared through a private link. The opt-in introductions of sellers to auction houses use it too. Cost logging, value tiers and retries apply to them automatically.
Screens
Inside Estimonia
How we delivered
From first brief to running in production
-
01
DesignProduct & brand
Defined a calm product that earns trust, with value ranges and confidence scores instead of single prices, and a quiet, classic visual style.
Brand systemScan UX -
02
API & data
DevelopmentBuilt a Laravel 12 API behind the web scanner, with anonymous Sanctum sign-in and records for scans, items, the directory and guides.
Laravel 12MySQLSanctum -
03
Vision pipeline
AISet up GPT-4.1 vision analysis through Prism, run as background jobs. It uses a strict JSON format, retries, rate limits and cost logging for every call.
PrismHorizonCost logging -
04
Guides & directory
ContentPublished a Knowledge Hub of value guides and an auction house directory with fee comparison and metal-price calculators.
65 guides159 listings
Growth over time
Since Jun 2025Results
What is running today
Live on the web
Estimonia runs on estimonia.com with a browser scanner that needs no account. Each result shows a value range, confidence and rarity scores and an explanation, and people can save items to a personal collection.
A research layer around the tool
The Knowledge Hub has 65 value guides across watches, jewellery, antiques, coins, art and collectibles. A directory lists 159 auction houses and dealers in 19 countries, with a fee comparison. Gold, silver and coin-silver melt calculators use live metal prices. A card-grading calculator weighs grading fees against sold values.
Routes to sale
Owners can choose to let vetted auction houses and dealers see an item without seeing who owns it. Contact details are shared only after the owner agrees. The estate-valuation flow turns photos of a whole house into a decision list: take it to a specialist, sell it yourself, or let it go.
More work
Other things we built and run
Syntask
Syntask is a Finnish startup that helps logistics teams make better decisions (decision intelligence). It needed its website to match a sharper position. We replaced an Elementor WordPress site with a Laravel build. It has pages for each buyer group and use case, the old blog moved over, a custom admin for posts and leads, and one clear next step for buyers.
Real Estate Club Dubai
Our own product. We built a Dubai property platform on Laravel. It has a service directory with 24 categories, a published method for its rankings, and calculators. A handover tracker pulls data from the Dubai Land Department registry. An AI advisor looks things up in our own database before it answers.
Shadowban Checker
Shadowban Checker is our own product. Creators connect their TikTok account with TikTok's official login, and we read the numbers of their recent videos and return a 0 to 100 risk score with the warning signs we found. It runs as a web dashboard in 6 languages.