Finance and accounting decision
Tickercompare
A single technical person can build a useful ETF compare site replacement (data ingestion, DB, API, UI) but reproducing the product's editorial curation, bundled data sources, and UX polish would be work; full parity is non-trivial.
Visit website↗Not priced
No pricing page we fetched carried a figure, so there is nothing to compare against. The build side is still real.
$100one-off60 h to build
$50/mo3 h/mo upkeep
No published price to break even against.
No open-source build does this yet
Nothing published replaces this one, so a replacement starts from an empty file. Here is what it would have to cover.
What a replacement has to do
- User selects ETFs → system fetches price/history and metadata → display sortable/filterable table + charts → save favorites/export
What it still won’t have
- Curated ordering and editorial curation maintained by the vendor
- Any proprietary data feeds or licensing the site may bundle
- Polish around UX, emoji/theme curation, and newsletter/subscriptions
What remains hard
- Product polish and ongoing maintenance
First-year cost
No published price
Tickercompare does not publish a price we could read, so there is nothing to compare against. What building costs is below.
Money you would actually spend
Time you would spend
—
What you would spend
What we assumed
The verdict above measures whether you could build it. This one is only about money.
Runnable build prompt
Build a self-hosted ETF comparator as a Python/Node backend + React frontend. Stack: Postgres, FastAPI (or Express) for API, React + Vite for UI, Chart.js for charts, and Fly.io or Heroku for hosting. In scope: import and normalize an ETF list and metadata, fetch daily historical prices (cron job), store data in Postgres, provide REST endpoints for paginated/filterable/sortable ETF lists and time-series data, a responsive UI with table, sorting, filters (theme, risk, dividends, fee), per-ETF chart, favorites saved per user (no auth or simple email token), CSV export, and scheduled worker for daily updates. Out of scope: payment/billing, advanced portfolio analytics, broker integrations for trading. Require error handling for failed API calls, retries for cron jobs, input validation, and unit/integration tests for API endpoints and one end-to-end UI test.
How we checked
How the score was reached
- Partly verdict base52
- Evidence score52
The base comes from the verdict. Everything under it is a check that either happened or did not, and each one is a fact frozen in this record rather than a judgement made at render time - so the same evidence always produces the same number.
How scoring works →Cited sources · 1
Every page the run actually retrieved.
- official productCompare UCITS ETFs (USD) · TickerCompare
Integrity checks
What held up, and what did not.

