FX Stats|
24h Vol141.8K USDC
|
Trades5,010
|
Per min7.0
|
Top pairEURC/USDC
Live

Methodology

Version 3.6 · Last updated October 2, 2026 · Corrections: hello@florin.fi

Florin measures trading activity, exchange rates, execution quality, and liquidity on Arc. This document defines the observations used, the calculation rules, and the limits of the published measures.

Florin is an independent analytics product and is not a registered benchmark administrator; nothing on this site is a regulated benchmark.

Scope and Coverage

Unless stated otherwise, market metrics cover completed trades on tracked protocols between tokens approved for coverage. Mainnet and testnet are measured separately, and available venues, assets, and history may differ between networks.

A venue is an exchange operation, such as StableFX. A venue may operate several protocols, or trading mechanisms; their eligible activity is combined in venue totals.

FX coverage includes only pairs in which both assets are classified as Stable. Network coverage includes all Arc activity observed by Florin, independently of market coverage.

Market observations comprise completed StableFX request-for-quote settlements and swaps in tracked decentralized exchange (DEX) pools. Eligibility for activity metrics is separate from eligibility for the reference rate: a protocol can contribute to volume and charts without contributing prices to the benchmark.

Each DEX observation represents one pool swap and uses the token amounts reported for that pool leg. Florin does not reconstruct transaction-level adjustments outside the pool observation, so those amounts may differ from the trader's final receipts or payments.

Coverage is selective. It does not represent all Arc venues or tokens, off-chain trading, or all bridge activity. Additional coverage is introduced after review of the source data and its economic meaning.

Asset and Pair Classification

Assets approved for coverage are assigned to one of three categories:

CategoryDefinition
StableAssets intended to maintain a fixed peg to one fiat currency.
YieldInterest-bearing instruments that are not pegged 1:1 to a currency.
CryptoNon-pegged digital assets selected for coverage.

Unreviewed assets remain unclassified and are excluded from pair and pool views. Current classifications appear on token pages. Classification describes an asset's intended characteristics; it does not establish the quality of its backing or guarantee its value.

A pair is classified as an FX pair when both legs are Stable assets. A pair containing a Yield or Crypto asset is tracked outside FX coverage.

Metrics labeled FX use this definition, including pairs of stablecoins pegged to the same currency. Other market metrics use the broader approved coverage.

Time Windows and Data Quality

Time conventions. All times and calendar days use UTC. Unless stated otherwise, 24h and 7d figures cover rolling windows ending at the calculation time. All-time figures are cumulative over available observed history.

Activity windows and chart intervals. Activity totals calculated from time buckets use complete intervals, including the window start and excluding its end. Market and protocol-volume totals use one-minute intervals; pool totals use five-minute intervals. Their windows end at the most recent complete interval boundary. Charts include the current partial interval through the latest available indexed data. Chart timestamps identify the start of each UTC interval; the latest day, hour, four-hour interval, or week is still accumulating. Reference-rate windows follow the separate convention below.

Publication. Market, protocol-volume, and network aggregates are generally updated every minute; address and pool aggregates every five minutes; and venue summaries every ten minutes. Complete-interval metrics can trail observed activity by one interval plus publication delay. Last-trade prices update as new settlements are observed, so they can be more recent than the aggregates beside them.

Missing data. Zero denotes a measured zero. Missing inputs, insufficient observations, and unsupported measures are shown as unavailable. Unpriced observations are excluded from value-based totals, and empty price intervals do not represent observed trades. For chart continuity, pair and pool OHLCV charts carry the prior close across gaps with zero volume; these flat bars are synthetic. Estimates are identified explicitly.

Reference Rate Methodology

Purpose and units. The reference rate summarizes eligible completed trades for a pair. It is expressed as quote-asset units per base-asset unit and serves as the benchmark for execution-cost comparisons. It is a transaction-based measure, rather than a bid/ask midpoint or an external oracle price. One basis point (bp) is 0.01%.

Eligible inputs. Only trades from protocols admitted to reference-rate calculation at the time of the trade are included. Prices and trade sizes must be positive. For pairs containing USDC, each eligible trade must have at least 1 USDC of notional.

Calculation. Each reference rate is calculated as of an observed block:

  1. Select the window. Take eligible trades in the trailing lookback, excluding its start and including its end, through the reference block.
  2. Group observations. Assign trades to fixed UTC intervals of the duration below. A trade exactly at an interval boundary belongs to the interval ending at that time.
  3. Calculate interval prices. Use the volume-weighted median: the first price, ordered from lowest to highest, at which cumulative weight reaches at least half the interval's total. Weight is USDC notional for pairs containing USDC and base-asset quantity for other pairs.
  4. Combine interval prices. Average the populated intervals, weighting each by the duration of its overlap with the lookback window. Empty intervals are omitted from both the numerator and denominator.

Florin evaluates two windows, in order:

ParameterPrimary windowFallback window
Lookback1 hour24 hours
Interval length5 minutes2 hours
Minimum eligible trades105
Minimum populated intervals43
Maximum age of latest eligible trade15 minutes6 hours
Minimum total notional for USDC pairs100 USDC25 USDC

The primary window is used when all its thresholds are met. Otherwise, Florin evaluates the longer fallback window. If neither qualifies, the rate is unavailable. A fallback rate reflects a longer observation period and may respond more slowly to changing conditions.

No look-ahead. A trade's execution cost uses the reference rate available at the latest completed block before the trade's block. The trade and other trades in its block cannot contribute to its own benchmark.

Reference-rate change. Absolute change is the current rate less the rate at the start of the 24-hour or 7-day window. Percentage change is:

rate change (%) = (current rate − prior rate) / prior rate × 100

Change requires both rates to be available and recorded volume in the corresponding window.

Observed prices and charts. Charts describe trades, which may include protocols excluded from the reference rate. Pair charts combine eligible activity across the pair; pool charts include only swaps in that individual pool. Open, high, low, and close use positive observed trade prices within each interval, including the current partial interval. Chart observations are excluded when every available base- or quote-leg USDC notional is below 0.01 USDC; an observation with both notionals unavailable remains eligible. An observation without a usable price may still contribute to volume when its USDC notional is available. Intervals without a prior observed price remain unavailable; flat carried-forward bars do not represent new trades.

On FX Overview, Last is the latest observed completed-settlement price. Δ 24h compares it with the latest eligible trade at or before the 24-hour cutoff, and is unavailable without a comparison price. Price 7d shows four-hour closing prices over seven days including the current partial four-hour interval. These are observed-price measures, distinct from reference-rate changes.

Display direction. Reversing a pair takes the reciprocal of its prices and recomputes rate changes in the displayed direction. For price bars, the inverse of the original low becomes the high, and the inverse of the original high becomes the low. USDC volume is unchanged.

Execution Cost

Execution cost measures a completed trade's rate relative to its prior reference rate, in basis points:

raw cost (bps) = (executed rate − benchmark) / benchmark × 10,000

Cost is side-adjusted so that a positive value always means execution worse than the benchmark, and a negative value better:

execution cost (bps) = raw cost (bps) × side

Here, side is +1 for a buy of the base asset and −1 for a sell. The executed rate and benchmark use the same quote-per-base direction. The measure is unavailable without a valid executed rate and prior benchmark. It does not measure the trader's decision-price shortfall, all-in transaction costs, or price impact relative to the pool immediately before the trade.

P50 and P95 summarize the median and 95th-percentile execution cost over the rolling 24-hour window. At least 20 eligible cost observations are required; otherwise both are unavailable. The same minimum applies to pair, pool, venue, and token summaries.

Volume and Market Structure

Valuation. Volume is expressed in USDC. For a trade containing a USDC leg, Florin uses that leg's actual amount. Other trades are valued using a direct USDC reference rate available before settlement. Trades without a computable USDC notional are excluded from value-based aggregates. USDC is the unit of account; these figures do not measure its external US-dollar market value.

Counting unit. Volume sums one notional per eligible settlement or pool swap. Each swap in a routed transaction is a separate pool leg, so one transaction can contribute several observations. Florin does not reconstruct or deduplicate complete trading routes. Trade count is the number of eligible observations, rather than the number of transactions or users.

Daily volume. FX Overview combines eligible volume across FX pairs, grouped by pair. Its 7-day, 30-day, 90-day, and all-time views use UTC calendar days including today; all-time begins with the first available daily observation. Token charts sum daily volume across all covered pairs containing that token. Venue charts sum daily volume across covered pairs at that venue. Fixed daily views retain their selected day count, including today. Current-day totals and daily consistency statistics include only activity indexed so far. Measured zero volume remains zero.

Token indexed volume share. Each settlement contributes its full USDC notional to both assets. A USDC/EURC settlement worth 1 USDC contributes 1 USDC to each token's volume and 2 USDC to total token-leg volume:

token share (%) = token-leg volume / total token-leg volume × 100

The denominator sums these token legs, so token shares total 100% for the same coverage and window. The headline share uses rolling 7-day volume; the daily trend includes the current partial UTC day. Token volumes should not be added together as a measure of total market volume.

Venue share and rankings. Venue share is each venue's proportion of a pair's 24-hour volume:

venue share (%) = venue volume / total pair volume × 100

Top Venue 24h and Top Venue 7d identify the venue with the most volume in the respective window. All protocols belonging to the venue are combined first. Ties use a fixed venue ordering. Unattributed volume is shown as Unknown.

Largest trades. The ten largest eligible settlements or pool swaps at a venue, ranked by USDC notional over seven days.

Settlement latency. For StableFX, the average elapsed time from trade initiation to settlement completion over 24 hours. DEX swaps settle within a single transaction and have no comparable measure.

Pool and Liquidity Metrics

Total value locked (TVL). The combined USDC value of a pool's measured token reserves:

TVL (USDC) = (base reserve × USDC per base token) + (quote reserve × USDC per quote token)

Reserves are valued using the applicable direct USDC reference rates. If either reserve or its valuation is unavailable, pool TVL is unavailable. TVL measures reserve value, not the amount executable at a particular price.

For Uniswap v2 pools, reserve values are the current reserves reported by each pair. For Uniswap v3 pools, they are the gross token balances held by the pool and should not be interpreted as active-liquidity depth. Per-pool reserve values remain unavailable for Uniswap v4 because assets are held collectively across pools. Theoretical execution prices use protocol-supplied quotes for v3 and remain unavailable for v2 and v4.

Observed pool TVL. Venue, pair, and token subtotals include only pools with measured TVL. A subtotal is unavailable when no constituent pool is measured; measured zero remains zero. These subtotals are partial coverage measures, not complete protocol TVL.

Top venue pools. Up to ten covered pools at that venue ranked by 24-hour USDC volume, then 7-day volume, with a fixed pool ordering for remaining ties. Pools with measured zero volume remain eligible.

Reserve share. Each side's share of pool TVL, by value.

Swap fee. The pool's configured swap fee, in basis points, when the protocol exposes one rate that is comparable across supported pool models. The measure is unavailable when no such rate exists.

Execution prices. Florin calculates theoretical single-pool buy and sell prices for USDC-equivalent input sizes of 1,000, 10,000, 100,000, and 1,000,000. A buy spends the displayed quote asset to receive the displayed base asset; a sell spends the displayed base asset to receive the displayed quote asset. When an input asset is not USDC, its prevailing reference rate determines the token quantity whose value equals the stated USDC amount.

The average price is the complete trade's quote-asset amount divided by its base-asset amount. The worst price is the effective quote-per-base price over the final 100 USDC-equivalent input, calculated from the difference between protocol quotes at the stated size and at 100 USDC less. This fragment is large enough to avoid material token atomic-unit rounding while remaining close to the end of each trade. Both are reported in displayed quote units per displayed base unit.

The parenthetical “vs ref” value is the raw rate difference from the pair's prevailing reference rate:

vs ref (bps) = (execution price / reference rate − 1) × 10,000

A positive value therefore means a higher quote-per-base rate, not universally better or worse execution: it is worse for a buyer of the base asset and better for a seller. Display inversion swaps buy and sell and recomputes prices and reference differences in the displayed direction.

Prices use quotes supplied by the pool's protocol, with quotes and reserve checks evaluated at the same safe Arc block. A side and size are unavailable if reserves cannot cover the stated USDC equivalent, a required reference rate is missing, or a supported quote is unavailable. Average and worst availability are independent, so an average can remain available when the terminal fragment cannot be resolved. These are theoretical single-pool prices, not guaranteed executions or comparisons across all possible routes.

Estimated fee revenue. A nominal estimate using the available swap-fee rate:

estimated fees (USDC) = pool volume (USDC) × swap fee (bps) / 10,000

This does not measure fees actually collected, additional charges, or the allocation of fees among recipients. Effective fees that vary by swap can cause actual fees to differ. The estimate is unavailable when the swap-fee rate is unavailable.

Turnover. Pool volume divided by current TVL for the 24-hour or 7-day window, expressed as a multiple. It is unavailable when TVL is missing or zero.

Estimated fee APR. Estimated fee revenue annualized against the pool's current TVL:

estimated fee APR (%) = estimated fees × periods per year / current TVL × 100

The annualization factor is 365 for the 24-hour window and 365/7 for the 7-day window, without compounding. APR is unavailable when estimated fees are missing or TVL is missing or zero. It applies recent estimated fees to current TVL; it does not measure realized liquidity-provider returns or forecast future yield.

Address Metrics

Address activity combines eligible 24-hour and 7-day volume and trade count across the roles in which an address appears. An address is counted once per settlement even if it has several roles. Average trade size is volume divided by trade count for the same window; pair share is a pair's proportion of the address's eligible volume.

Token balances. Supported balances are measured at the same Arc block, identified on the page, and expressed in token units. Zero balances are omitted from the table. The priced portfolio subtotal values positive balances at the latest available direct USDC reference rates, which may have different observation times from the balances. Balances without a rate remain visible as unpriced and are excluded from that subtotal.

An address may belong to a person, a pool, a router, or another contract. Florin does not infer beneficial ownership or combine related addresses into users. Address totals therefore do not measure unique users or distinct economic activity.

Network Metrics

Network metrics cover all Arc activity observed by Florin, independently of the market and asset eligibility rules above.

Daily charts show 30 UTC calendar days including today. Hourly transaction counts include the current partial hour. Current-period totals include activity indexed before the displayed update time and continue to accumulate.

Transactions per hour. All observed Arc transactions, grouped by hour.

CCTP bridge flow. Daily USDC minted on Arc through the observed CCTP bridge is inbound flow; USDC burned is outbound flow. Net flow is inbound less outbound. This measures transfers through the covered bridge, rather than total capital flows into or out of Arc.

Gas fees. Daily network gas paid, in USDC, summed across all observed transactions regardless of outcome.

Limitations

  • Representativeness. Selective coverage and unfiltered trading activity can affect prices, rankings, and volume. Reference-rate thresholds establish minimum observations, not immunity from manipulation.
  • Route-level interpretation. DEX volume measures pool legs. It can count several legs of one economic trade, and observed pool amounts may differ from final trader amounts.
  • Coverage exclusions. Where Curve is tracked, swaps between a pool's underlying assets are excluded from pricing, volume, and venue-share aggregates. Activity may be understated where these swaps are common.
  • Valuation and liquidity. Unpriced activity and unmeasured reserves are absent from value-based totals. Observed TVL subtotals may therefore cover fewer pools than volume totals. Reserve value does not establish executable liquidity.
  • Comparability over time. Additions to coverage and changes in classification can affect aggregate levels and shares. Changes should be considered alongside market activity when interpreting a time series.
  • Freshness and estimation. Publication can lag during high activity or maintenance. Theoretical prices and estimated fee metrics describe stated assumptions and observed conditions; they do not guarantee execution or investment returns.

Changelog and Contact

This methodology is reviewed as coverage and calculations change. Material revisions are recorded below. Questions and corrections may be sent to hello@florin.fi, with the network, page, metric, and observation time where possible.

v3.6 — October 2, 2026. Included current partial periods in daily volume and share charts, Network daily charts, pair and pool OHLCV charts, and the FX Overview four-hour price series.

v3.5 — September 29, 2026. Changed pool worst-price calculations from a one-cent terminal fragment to the final 100 USDC-equivalent input, preventing token atomic-unit rounding from distorting the result while keeping the measure close to the end of each trade.

v3.4 — September 28, 2026. Excluded sub-cent settlements from pair and pool OHLCV charts.

v3.3 — September 25, 2026. Removed the FX-only restriction from venue aggregates. Venue volume, share, pair coverage, execution quality, largest trades, history, and pool summaries now include every covered pair at that venue; FX filtering remains specific to FX-scoped surfaces.

v3.2 — September 19, 2026. Added Arc mainnet Uniswap v2 and v3 swaps to activity, chart, and reference-rate coverage. Documented version-specific reserve and execution-price availability.

v3.1 — September 18, 2026. Extended reference-rate eligibility to admitted Arc mainnet Uniswap v4 swaps. Revised presentation around inputs, calculation rules, and interpretation, including reference-rate timing, pool-leg counting, USDC valuation, and unavailable pool measures.

v3.0 — September 16, 2026. Added Arc mainnet Uniswap v4 swaps to activity and chart coverage, with disclosures for pool-level amounts and unavailable pool measures.

v2.8 — August 30, 2026. Added theoretical pool execution prices for four USDC-equivalent sizes, including average price, final-fragment price, and comparison with the reference rate.

v2.7 — August 24, 2026. Clarified that every daily Network chart point is a completed UTC calendar day and excludes the current incomplete day.

v2.6 — August 21, 2026. Documented the FX Overview table's observed last-trade price, 24-hour price change, seven-day price series, and per-pair top-venue rankings.

v2.5 — August 8, 2026. Distinguished activity coverage from reference-rate participation.

v2.4 — August 4, 2026. Documented common-block token balances and the as-of distinction between balance measurements and USDC reference rates.

v2.3 — July 12, 2026. Clarified pair and pool chart coverage, volume, display direction, and counting conventions.

v2.2 — July 4, 2026. Clarified default market coverage, FX Overview filtering, and Network page coverage; and updated token-volume methodology to use all tracked pairs containing the token.

v2.1 — June 29, 2026. Clarified completed-interval windows, UTC timestamps, token daily volume, and price-chart treatment of unpriced settlements.

v2.0 — June 21, 2026. Restructured and condensed the methodology for clarity. Consolidated rate, classification, and display-handling sections into single definitions; removed detail not relevant to how published figures are calculated.

v1.0–v1.3 — May–June 2026. Initial publication of Florin's Arc testnet methodology, followed by incremental documentation of token classification and FX pair scoping.