Fund returns

Latest pre-calculated US ETF market-price returns, published nightly after the US close and refreshed after the morning correction pass. Includes 1m, 3m, YTD, 1y, 3y, 5y, 10y and since inception, cumulative and annualised as decimal ratios. Calendar anniversaries clamp leap days and month ends; YTD starts at the prior year end. The start is the last available close on or before the target within seven calendar days; the end must have the latest complete US session's close. Actual dates are returned. Since inception requires a close on the reported inception date itself; missing inception history is never relabelled as inception performance. Split and cash-dividend factors follow OHLC's adjusted EOD convention; unsupported distributions or unavailable adjustments yield null with a reason, never price-only fallback. Returns are in the listing currency without FX conversion, NAV returns, tax or investor transaction fees. Annualisation uses 365.25 days and is omitted below 365 elapsed days. Missing prices, inception dates and adjustments are explicit per period. Currently US ETFs only, not mutual funds or closed-end funds. Revisions become visible when recalculated; as_of selects the snapshots known then, not a hypothetical historical calculation. Default order: observed_on ascending, id ascending. Omitting entity selectors returns the entitled universe; explicit unauthorized selectors return 403. Data is delivered from validated canonical batches; a connected dataset with nothing published for the key's markets yet returns 503. Access requires the operation capability on the API key.

GET/v1/funds/returns
Required capability
funds.read
Data timing
As published by the source
Credits
5 credits per request.
Live endpoint. Request examples query live data with your API key; response examples are illustrative. History and coverage vary by dataset and plan; see dataset coverage.

Parameters

instrument_idsstringoptional · query
Filter by stable instrument IDs. IDs and symbols may not be combined.
symbolsstringoptional · query
Convenience lookup for exchange-listed instruments as MIC:TICKER or a bare ticker, which resolves to the exchange listing that ticker; resolves at symbol_at. The MIC and the ticker are case-insensitive, and two spellings of one listing (AAPL and XNAS:AAPL) count as a repeated value. A bare ticker that names no listing as written is also read in the common vendor spellings: with an exchange suffix (RY.TO, SHEL.L, VOD.LSE, BHP.AX), ^GSPC for INDEX:GSPC, and EURUSD=X or EURUSD for FOREX:EUR-USD. Rows name the listing by its own symbol at symbol_at, which can differ from the spelling requested: BRK.B returns XNYS:BRK-B, BAC-P-L returns XNYS:BAC-PL, and a coin listed with its identifying number returns that ticker (PEPE-USD returns CRYPTO:PEPE24478-USD), so match rows to requests by instrument_id. A ticker may contain a space (BAC PRL) but not start or end with one. A request in which no symbol resolves returns 404 symbol-not-resolved; otherwise each symbol that does not resolve, or resolves to a listing with no rows for the request (no-data), is an entry of meta.errors. IDs and symbols may not be combined.
symbol_atstringoptional · query
Resolve symbols as they were assigned at the end of this UTC date (YYYY-MM-DD); defaults to as_of. Only listings the security master holds resolve: it was built in September 2026 and records delistings from then on, so most issuers delisted earlier, such as TWTR or SIVB, resolve at no date. Only valid with symbols.
effective_datestringoptional · query
Effective date, defaults to the UTC date of as_of. Returns the latest eligible snapshot on or before this date; response retains its actual snapshot date.
as_ofstringoptional · query
Knowledge cutoff as a UTC date (YYYY-MM-DD): the response reflects what was known by the end of that day. Defaults to now; cannot be in the future. A date from before the dataset's knowledge history returns 422 point-in-time-unavailable naming the earliest one, which GET /v1/datasets lists as earliest_as_of.
known_fromstringoptional · query
First UTC date (YYYY-MM-DD, inclusive) on which a revision became known.
known_tostringoptional · query
Last UTC date (YYYY-MM-DD, inclusive) on which a revision became known; on or after known_from.
orderstringoptional · query
Direction on observed_on; ties use ID ascending.

ascdesc

Default: asc
limitintegeroptional · query
Maximum records per page.Default: 100
cursorstringoptional · query
Opaque cursor, expires after one hour; binds filters, order, resolved as_of, account/key and entitlement. Repeat the original query unchanged.
formatstringoptional · query
Response format. csv returns the data rows with a header row, for spreadsheet functions such as IMPORTDATA; nested fields become dotted columns and lists one JSON array cell, the next page cursor is returned in X-Next-Cursor and meta.errors in X-Meta-Errors. A result without rows is the header row alone, listing the documented fields of a row. Default json, or csv when format is omitted and the Accept header ranks text/csv above JSON; a format the Accept header does not admit returns 406 not-acceptable.

jsoncsv

Response fields

Returns data as an array of records. All example values are illustrative.

idstring
Record identifier, stable across revisions.
instrument_idstring
Opaque stable public identifier; never an internal database key.
observed_onstring
observed on
currency_codestring · null
ISO 4217 currency. Crypto quote assets use instrument IDs, not invented ISO codes.
price_basisstring
Exchange-traded closing-price performance, not NAV performance; no FX conversion.

market_price

adjustmentstring
Split and cash-dividend adjusted, using OHLC's backward dividend factors. Never falls back to price-only returns.

total_return

calculation_methodstring
Calculation convention.
periodsarray
periods

Response metadata

Responses include meta.timezone. Dataset responses include next_cursor; health and exports have their own metadata. Request tracing uses the X-Request-ID header.

Read the shared data conventions

When something goes wrong

An empty data: [] is a successful query with no matching records. Invalid symbols, permissions and malformed parameters produce an RFC 9457 problem with an actionable detail.

Error codes & retry guidance

Plans

Requires funds.read. Access, recency and history depth come from the plan definitions the API enforces.

PlanAccessRecencyHistory
FreeNot included——
DeveloperNot included——
ProIncludedAs published15 years
CommercialIncludedAs publishedFull history
ScaleIncludedAs publishedFull history

History is how far back a plan may request. How far records actually go for a symbol is history_from in dataset coverage. Nothing is real-time. Compare plans