Payments
Crypto Payments — Hosted checkout & API for 110+ coins White Label — Your brand on the entire payment flow Processing — Auto-convert, withdrawals & controls Payouts — Mass crypto payouts by API or file Platform — Marketplace payments & commissions
Swap Plugins Affiliate Pricing Blog Docs Contact
Language
Sign in
All articles

How to Display Crypto Prices on Your Website

Show live crypto prices on your site with a free widget, a WordPress plugin or a custom API ticker. Learn the trade-offs, accessibility rules and security basics.

CryptoPayr Oct 19, 2026 13.00 min read
How to Display Crypto Prices on Your Website

How to Display Crypto Prices on Your Website

Watercolor frame surrounding article title

There are three practical ways to show live crypto prices on a site: embed a ready-made widget, install a WordPress plugin, or call a price API from your own backend. Widgets take minutes and cost nothing. Plugins fit store owners who want prices tied to checkout. A custom build gives you full control, but you have to handle rate limits, API keys and accessibility yourself.

This guide covers all three, with the mistakes that cause trouble later. It also covers the step most price-display guides skip: what happens when a visitor wants to pay in crypto and not just look at a number.

Cryptopayr
Turn Crypto Interest Into Payments
CryptoPayr helps businesses accept over 110 cryptocurrencies, including Bitcoin and Ethereum, through a payment gateway for digital services.
Visit CryptoPayr

TL;DR

Table of Contents

Decide what the prices are for

The right method depends on the job the numbers do on your page.

Most sites that ask this question are really in the second or third group. Start by deciding which one you are in, because it changes which tool makes sense.

Option 1: embed a ready-made widget

The fastest route is a hosted widget. You pick a style, copy a snippet and paste it into an HTML block. Free libraries from the big data aggregators cover the common cases: a ticker, a coin list with price chart and a coin converter. Google’s results for this keyword are dominated by this kind of tool, plus browser extensions and phone widgets that show prices to the person using them, not to your visitors.

Good for: blogs, landing pages, documentation, anything where the price is context.

Watch out for:

If you only need one number, such as Bitcoin in dollars, a widget with a single coin is lighter than a full table.

Option 2: use a WordPress or store plugin

On WordPress, a plugin saves you from writing any code. The WordPress.org directory lists tools like the Cryptocurrency Price Ticker Widget, which connect to public data providers and let you place prices with a shortcode or a block. Some plugins go further and convert store totals into crypto at the current rate.

Things to check before you install:

  1. Last update and compatibility. An abandoned plugin that fetches external data is a security liability.
  2. Where the data comes from. Know which provider it calls and under what limits.
  3. Caching. A good plugin stores the last response on your server. A bad one hits the API on every page view.
  4. Whether it only displays. A ticker plugin shows prices. It does not accept money.

If you run WooCommerce or Easy Digital Downloads, the better question is whether you want a display plugin and a payment plugin or one tool that does the second job. Our guide on how to accept crypto payments on WooCommerce walks through that path, and our WordPress crypto payments overview covers the plugin side in general.

Option 3: build a ticker on a price API

A custom build suits developers who want their own design, a limited set of coins or prices that blend into an existing interface.

Pick an API and read its limits

Most providers expose a simple endpoint for current prices. CoinGecko’s /simple/price endpoint returns prices for one or more coins by ID, symbol or name. CoinMarketCap also documents a latest prices workflow for assets you already know.

Free tiers are enough for a small site. According to CoinGecko’s pricing page, the Demo plan is free for up to 10,000 monthly calls with a limit of 100 calls per minute, and paid plans start at $29 a month. Check the current numbers before you plan, since providers change them.

Do the arithmetic early. If you refresh every 10 seconds for every visitor, a few hundred page views will burn through 10,000 calls quickly. That is the single most common reason a homemade ticker stops working.

Keep the key on the server

If you use a paid or keyed API, never put the key in front-end JavaScript. Anyone can open the browser’s network tab, copy the key and use up your quota. OWASP’s testing guidance on client-side exposure is a good starting point for why sensitive values should not be exposed to the browser. The safer pattern:

  1. Your server calls the price API on a schedule, for example once a minute.
  2. Your server stores the latest result in memory, a database or a cache file.
  3. Your page asks your own endpoint for that stored result.

This also means that 10,000 visitors cause one upstream call a minute, not 10,000.

Poll gently

If the call has to come from the browser, because it is a keyless public endpoint on a static site, a developer who tried several approaches on a Netlify site recommends polling at most once a minute and storing the last response in sessionStorage so a page reload does not trigger a fresh call. Calls that are limited by visitor IP address can otherwise get your readers rate-limited one by one.

A minimal pattern

The logic is short. On the server, fetch the prices for the coin IDs you want in your chosen fiat currency, write them to a cache with a timestamp, and expose a small JSON route. In the page, read that JSON, format the numbers with Intl.NumberFormat, and render them into a table. Show the timestamp next to the numbers.

Price data flow from API to website table

Format deliberately. Bitcoin at five figures needs no decimals, while a token worth a fraction of a cent needs enough precision to be meaningful. Show a currency symbol or code every time.

Make the display accessible

A price block is a data table first and a design element second. Two points matter most.

Moving content must be controllable. WCAG’s pause, stop, hide criterion says that if something moves, blinks or scrolls by itself, the visitor has to be able to pause, stop or hide it. A scrolling marquee can also trigger vestibular symptoms. Add a visible pause button and respect the prefers-reduced-motion media query, so the ticker stays still for anyone who has asked their system to reduce motion.

Do not announce every update. Guidance on ticker and price feed announcements warns that a polite live region around a large table of prices can keep a screen reader talking and make the rest of the page hard to use. The same source suggests a stable, static table for the real data, with the ticker kept as a purely decorative layer.

In practice:

Be honest about what the numbers mean

A displayed price is a market reference, not an offer. Three habits keep you out of trouble with customers.

  1. Label the source and time. “Prices from [provider], updated 2:41 PM ET” is enough.
  2. Say it is indicative if you are not guaranteeing a rate at checkout.
  3. Do not display rates you do not honor. If your page shows 0.0412 BTC for a product and the checkout asks for more, you have created a support ticket and a trust problem.

This is where the display meets the payment. Volatile assets move between the moment a customer starts a payment and the moment it settles, which is why businesses often look beyond a price display to stablecoin conversion to limit swings. For a deeper look at that approach, see our explainer on stablecoins as the easiest way to get paid in crypto and our U.S. guide to accepting stablecoin payments.

Our perspective

We process crypto payments for merchants, so we see the gap between “showing” and “selling” every day. Most merchants who first search for how to display crypto prices are not trying to run a market data site. They want customers to see what something costs in Bitcoin, Ethereum or a stablecoin and then pay without friction.

Our perspective — overview diagram

Our view is that the display should never be its own system. If the number on the product page comes from one provider and the checkout uses another rate, the two will disagree sooner or later. That is why we publish a live rates page and a crypto converter on our own site, and why merchants who use our gateway do not have to stitch a ticker to a checkout themselves.

We also think most small sites over-build the ticker. A scrolling bar across the header looks like a crypto site, but a clear table, a visible timestamp and a checkout that matches the table do more for conversion and trust. Spend your effort on the second half of the journey.

— Dustin

Show prices and take payment in one flow

If your goal is to sell, a display plugin is only half the job. CryptoPayr is a no-KYC crypto payment gateway that lets businesses accept 110+ cryptocurrencies, including Bitcoin and Ethereum, through a hosted checkout, e-commerce plugins, payment links or an API. For stores, it includes plugins such as WooCommerce and Easy Digital Downloads, and it offers auto-conversion to stablecoins to reduce price swings between payment and settlement.

Our published pricing runs in volume tiers: Standard at 2%, Growth at 1.5%, Scale at 1% and Enterprise at 0.1%, plus a flat $0.10 per payment option. See the current details on the CryptoPayr pricing and product page, or read how we handle crypto payments for e-commerce.

If you want a branded price and swap experience on your own WordPress site, our white-label exchange widget is built for that.

Quick comparison of the three methods

Method Setup time Skill needed Control Best for
Hosted widget Minutes None Low Blogs, info pages
WordPress plugin 10 to 30 minutes Basic Medium Content sites, small stores
Custom API ticker Hours to days Developer Full Branded dashboards, custom UIs

A sensible path for many sites: start with a widget, move to a plugin if you need shortcodes or cart conversion, and build custom only when design or data needs demand it.

Pre-launch checklist

FAQ

Can I display crypto prices on my website for free?

Yes. Free widget libraries let you embed a ticker, a coin list or a converter with a pasted snippet. If you build your own, free API plans exist too: CoinGecko’s Demo plan allows up to 10,000 calls a month. Cache your results so a small site stays inside those limits.

How often should live crypto prices refresh?

Once a minute is enough for nearly every website, and it keeps you far from rate limits. Refreshing every few seconds mostly adds API cost and distraction. For a payment page, what matters more is that the quoted amount is fixed for a short window at checkout.

Is it safe to call a crypto price API from the browser?

Only for keyless public endpoints, and even then you risk IP-based rate limits. If the API needs a key, route requests through your own server so the key never reaches the visitor, as OWASP’s guidance on client-side exposure implies.

Does showing crypto prices mean I can accept crypto payments?

No. A price widget only reads market data. To accept payment you need a gateway that creates the invoice, watches the blockchain and settles funds to you. You can then display prices from the same rate source the checkout uses.

Sources

Start accepting crypto today

Open a free CryptoPayr account and take your first crypto payment the same day.

Get started for free

Keep reading

📝 Guides

Crypto Payment Limits for Merchants: Checks Near 1,000

Crypto payment limits depend on your channel, verification tier, bank rules, and Travel Rule checks. Learn how merchants and payers can prepare to reduce...

Oct 18, 2026 · 9.00 min Read →
📝 Guides

Expired Crypto Payments for Merchants: A Refund Is a New Transfer

Expired crypto payments leave merchants to reconcile late funds, request a top up, or refund with a new transaction. Set clear rules for late arrivals.

Oct 17, 2026 · 10.00 min Read →
📝 Guides

Customize Crypto Checkout for Merchants: Webhooks Before UI Polish

Customize crypto checkout with payment options. Compare hosted, embedded, and API options, secure webhooks, and verify payments before fulfillment.

Oct 16, 2026 · 12.00 min Read →