Factsheet
How the index is built, what it can honestly claim, and where it falls short.
VCIx publishes two paired measures from five equally weighted pillars: a zero-centred Activity factor and a –100 to +100 Breadth balance. The former chain-linked level remains available only as a legacy audit series.
0 = recent norm
Activity reference
2021 = 100
Legacy audit reference
53 · since 2022-06
Months with a public signal
5 / 7
Series contributing now
Activity measures whether the panel's directional year-over-year growth is stronger or weaker than its own recent norm. Breadth measures how widely improvement or deterioration is shared across the available pillars. Positive is stronger or broader; negative is weaker or narrower.
Activity is not a percentage, has no maximum of 100, and is not a completion score. Zero does not mean no activity: it means the panel is at its recent directional-growth norm. Breadth is bounded, but +100 means all available pillars are improving, not that Venezuela is fully recovered.
Activity robust-standardizes each series' directional 12-month change against information available through that month, caps component outliers, averages source families within pillars, gives available pillars equal votes, and takes a three-month mean. Breadth uses the signs of the same qualified signals.
-100 – 100
Breadth range
3.0
Public contract version
Published Activity formula
3m mean(equal-weight pillars(equal-weight source families(clip(robust_z(directional_12m_change), -3, 3))))REST and MCP publish Activity and Breadth as the top-level v3 contract. The prior chain-linked level, its 2021 reference, and its percentage momentum are nested under legacy. No observation or stored snapshot was rewritten to create the new public measures.
Activity deliberately has no arbitrary base year. An earlier version claimed a 2012 benchmark, but the underlying data could not support it: publishing that base would require invented values. The legacy chain-linked series uses 2021=100 only as an audit reference and is not the public headline.
Six reproducible steps, in order. None creates or fills an observation.
Eligibility
A series enters only if it is explicitly named in CORE_PANEL v1.4 and clears the existing real-history, freshness, source-class, methodology, and collision gates. Missing or unusable inputs stay absent; they are never estimated.
Monthly resampling
Every admitted series is aligned to one value per calendar month using the existing, disclosed carry budgets: two months for daily, weekly and monthly series, six for quarterly, and twenty-four for annual. Beyond that budget the signal is absent, not flat.
Directional 12-month change
Positive quantities use 100 × log(current / twelve-month-prior). For lower-is-better rates such as monthly inflation, the signal is prior minus current in percentage points, so disinflation is positive without dividing by a rate that can approach zero. Zero or non-positive quantities cannot produce a log change and remain absent.
Causal robust standardization
Each directional change is compared only with that series' history available through the same month: at least six signals and at most the latest sixty. The centre is the median and the scale is 1.4826 times median absolute deviation, with sample standard deviation used only when MAD is zero. Each standardized component is capped at ±3.
Source-family and pillar votes
Metrics from the same named source family are averaged before entering a pillar, so multiple cuts of one publisher cannot gain extra votes. Source families are averaged within each pillar; the available pillars then receive equal votes. With five available pillars, each contributes 20%.
The index does not auto-admit anything with enough history: the constituents are an explicit, versioned editorial decision, named here with the cadence and source grade behind each one.
1.4
Panel version
7
Named series
| Pillar | Vote | Constituent | Cadence | Class |
|---|---|---|---|---|
| Production & Economic Activity | 20% | Total Vehicle Sales | monthly | A |
| Oil, Gas & Exports | 20% | Active Oil Rigs | monthly | A |
| Monetary & FX Stability | 20% | Inflation (MoM) | monthly | A |
| Bolívar Official-Rate Change | daily | B |
Live, from the most recent Activity computation. A pillar with no qualified signal is published as no signal rather than as a neutral value; the available pillars receive equal votes.
| Pillar | Vote | Activity | Breadth | Coverage |
|---|---|---|---|---|
| Oil, Gas & Exports | 20% | 0.00 | 0 | no signal(0 of 1) |
| Monetary & FX Stability | 20% | +1.03 | +83 | covered(2 of 2) |
| Banking & Corporate Health | 20% | +0.34 | +100 | covered(2 of 2) |
| Trade, Mobility & Investment | 20% | -0.15 | 0 | thin(1 of 1) |
| Production & Economic Activity | 20% | -0.66 | +100 | no signal(0 of 1) |
Everything below is a known weakness of the current index, published because a reader cannot evaluate the number without it. None of it is hypothetical; each item is measured.
7
Composition changes
1.54×
Cumulative splice factor
351.6 / 228.3
Level vs. unspliced
The history is revised-history, not a real-time vintage backtest
The calculation is causal — a month uses no future signal — but the site did not preserve every release vintage. Historical Activity is reconstructed from the latest observation revisions, so it cannot show exactly what a user would have seen on each past release date.
The panel is thin
The count below is the number of series actually contributing in the latest month. Some pillars are currently carried by a single constituent. A composite this narrow will move on single-series news, and month-to-month volatility should be read in that light rather than as economic signal.
The panel does not cover the whole economy
Panel v1.4 is a deliberately limited editorial basket. Admission now requires real observations at each series' own cadence, not carried-forward months; that fixes the earlier admission defect, but it does not make a small basket comprehensive. An economic change not represented by one of the panel's signals may not appear in the index.
Zero is a relative norm, not a neutral economy
Activity compares each series with its own recent directional-growth distribution. A zero reading can coexist with severe absolute conditions; it says momentum is near the panel's recent norm, not that the economy is healthy or fully recovered.
Sources have different grades
The rule this project runs on: every observation must be traceable to a real, checkable origin. A number that cannot be traced is fabricated, however plausible it looks. A series has provenance only if all three of the following hold.
Prohibited outright: inventing values to fill a chart or an empty page; interpolating, extrapolating or backfilling a reasonable estimate and presenting it as an observation; attributing a number to an institution that did not publish it; and adding jitter to make generated data look observed. The last two are not hypothetical — both have happened here and are recorded below.
An empty pillar, a null value, or not currently measured is always the correct output when data is absent. The index publishes nulls rather than neutral placeholders, which is why some pillars above may read no signal.
Two purges of fabricated or unsourced data, both on 2026-08-07. Backups of every deleted row are retained in the repository so the deletions are auditable rather than merely asserted.
Every observation carries a source class and a confidence class. Higher classes take precedence when values conflict; lower classes are shown with explicit caveats rather than hidden.
Official statistical agency or regulator
Company filings and reputable secondary aggregators
Credible estimates and market monitors
Proxies and thinly documented signals
Confidence classes are assigned per observation, alongside a review status. What each actually claims — and what it does not — is in section 6.5.
Every observation also carries a review status — verified or pending. Read on its own, “verified” sounds like a person checked the number. That is not what it means on this site, and the gap between those two readings is worth stating outright rather than leaving a reader to assume the friendlier one.
Verified means the three provenance tests in section 5 are met for that observation: a real, named source; a collector or documented manual entry that can be re-run or re-checked; and a recorded methodology. It is a statement about whether the collection path is on record and machine-checkable.
It is not a statement that a person reviewed this specific number before it went live. The overwhelming majority of observations marked verified were written by an automated collector on a schedule, with no one in the loop at write time. That is what the label is allowed to claim; reading it as human sign-off would be wrong. This was not always stated: until 2026-08-09, 93% of all observations carried verified while recording no methodology at all, which is a claim we could not support. Those rows have since been corrected — either given the methodology their collector always had, or moved to pending where the collection path could not be established from the code.
Pending is the honest opposite, not a lesser grade of the same value. The number is real and stored exactly as collected; what is missing is the documentation — no named source, no re-runnable collector or recorded manual entry, or no recorded methodology. We are withholding a provenance claim, not flagging the value as wrong.
Some data on this site is entered and checked by a person, and says so — the funding-round records behind the VC pillar, for instance, are a documented manual research pass, not a collector. Reading every verified row as unreviewed would be its own kind of overstatement. What changed is only that the verified label stopped being read as a promise that this happened on every row it appears on.
Confidence — high, medium or low — tracks the same thing as review status: how well the collection path is documented, not a forecast of how close the number will turn out to be. A high-confidence observation is fully documented and can still be revised if its source revises it; a medium- or low-confidence one is thinner on paper, not necessarily more wrong.
Counted from the live catalogue, not from a list maintained by hand.
Every source currently feeding an active series, counted from the catalogue. If a source appears here it has at least one live series behind it.
world-bank
feeds 6 series
un-comtrade
feeds 5 series
bcv
feeds 4 series
bcv-payments-archive
feeds 3 series
bcv-payment-channels
feeds 2 series
cavenez
feeds 2 series
jodi-oil
feeds series
Found something wrong on this page? That is the most useful bug report this project can receive — the number is only worth as much as this description of it. Changelog
Activity, Breadth, and smoothing
Activity is the equal-pillar mean of the standardized signals. Breadth converts the same qualified raw changes to +1, 0 or -1, averages source families and pillars in the same order, and multiplies by 100. Both public series are three-month trailing means; current coverage is reported separately and is never smoothed into a better-looking figure.
-3 – +3
Standardized component cap
5
Pillars
| Banking & Corporate Health | 20% | BVC Equity Composite (USD) | monthly | B |
| Bank System Deposits (VES) | weekly | A |
| Trade, Mobility & Investment | 20% | Mirror Imports (partner-reported) | annual | A |
The Trade pillar is one annual series, carried forward monthly
Trade's entire available-pillar vote (20% when all five pillars qualify) rests on mirror-imports-usd-m — partner countries' UN Comtrade-reported exports to Venezuela, published once a year. The monthly alignment may carry the same annual print for up to 24 months. That is not a new observation, and this slow-moving input should be read as a limitation rather than hidden behind the monthly output cadence.
Several series with real, provenanced history are still not in CORE_PANEL. Each exclusion below is a recorded editorial decision, not an oversight — see the doc comment on CORE_PANEL in src/lib/vci.ts.
fx-trust-gap-pct (Monetary) — dropped in v1.2
Not a depth or staleness problem: it fails the source-class gate because one of its two inputs, p2p-usdt-ves, has had more than one writer of different grades over its history, and the panel now grades a derived series by the WEAKEST class any of its sources has ever written, not just its most recent one. It stays published, and stays the homepage and Ground Truth headline number — this page presents it that way deliberately — it simply does not steer the index while that class problem stands. If p2p-usdt-ves becomes class B end to end, the trust gap becomes eligible for a new admission review; explicit panel membership never changes automatically on catalog sync.
p2p-fx-spread-pct (Monetary)
The official-rate change series fx-daily-depreciation-pct is no longer excluded: v1.4 admits its 1,749 exact publication-to-publication changes after a frozen comparison found 61 real months, low monthly-level correlation with inflation-mom-pct (r=0.139), full current coverage and lower headline volatility. The P2P spread remains excluded with only 5 observations and represents venue friction rather than a deep macroeconomic history. No missing dates are filled for either series.
bank-credit-ves-bn (Banking) — dropped in v1.2
Correlates r=0.925 with bank-deposits-ves-bn over 58 overlapping months — two reads on the same underlying banking-system expansion, not two independent pieces of evidence. Deposits was kept as the cleaner series; credit is also the one the synthetic-data audit already flags with a step-dispersion advisory. Stays published on its own page; this is an index-admission call, not a data-quality verdict.
new-vehicle-sales and commercial-vehicle-sales (Production) — superseded in v1.2
The two correlate r=0.934 over 30 months: they are passenger and commercial cuts of the same monthly CAVENEZ release, not independent reads on vehicle demand. A derived total-vehicle-sales now enters the index instead, summing both legs for months where both have a real observation. Both inputs stay published on their own pages.
The four mirror-imports HS-chapter breakdowns (Trade)
Machinery, fuels, agri and consumer sub-series stay published on their own pages, but only the total (mirror-imports-usd-m) enters the index — five annual cuts of one UN Comtrade pull is not five independent readings.
ibc-index-spliced (Banking)
A sound, splice-corrected series, but it correlates r=0.883 with bvc-composite-usd, which covers the same market with deeper, continuous history. One market, one constituent.
pdvsa-2027-cents and venz-2031-cents (Oil, Banking) — dropped in v1.1
Hand-entered backfill anchors — 6 and 4 points respectively, on a weekly cadence — that cannot honestly clear the panel's real-history bar and were measured roughly 160 days stale on 2026-08-08. Both stay published on their own pages and can be re-admitted once their collector produces real, dense, current history.
gdp-real-usd-bn (Production)
World Bank annual GDP publishes roughly 18 months in arrears — 584 days old when measured on 2026-08-08, against the panel's 547-day (1.5×) freshness allowance for an annual series. A print that old should not move a live index; it stays published on its own page.
The current panel combines class A official statistics with class B industry and derived series. Source grade is disclosed rather than converted into a hidden numerical weight. A failed or missing source is skipped, never estimated; a series without a public source is not admitted.
compounding at exactly 1.04000× per month for 24 consecutive months
7 series142 rows· 2026-08-07
no verifiable source
A synthetic-data audit runs before any deploy that touches data and fails the build on constant-ratio and constant-delta sequences. It was extended after a fabricated export series — a perfect arithmetic run rising by exactly 5.0 every month, attributed to the central bank — passed the original ratio-only test, because an additive sequence has a varying ratio and read as ordinary decelerating growth. The detector had a blind spot shaped exactly like the fabrication.
opec-momr
feeds 2 series
vcix-cavenez-analytics-derived
feeds 2 series
world-bank-pink-sheet
feeds 2 series
baker-hughes
feeds 1 series
cavenez-derived
feeds 1 series
opec-merey-discount-derived
feeds 1 series
vcix-air-activity-derived
feeds 1 series
vcix-bank-credit-growth-derived
feeds 1 series
vcix-bank-deposits-growth-derived
feeds 1 series
vcix-bank-loan-deposit-derived
feeds 1 series
vcix-bcv-payments-derived
feeds 1 series
vcix-inflation-derived
feeds 1 series
yahoo-finance
feeds 29 series
sudeban-statistical-archive
feeds 7 series
bvc-derived
feeds 3 series
dolarflow
feeds 2 series
ember-yearly-electricity
feeds 2 series
imf-portwatch
feeds 2 series
usdt-ve
feeds 2 series
vcix-sudeban-credit-composition-derived
feeds 2 series
datosmacro
feeds 1 series
farmatodo
feeds 1 series
vcix-bank-credit-official-fx-derived
feeds 1 series
vcix-bank-deposits-official-fx-derived
feeds 1 series
vcix-fx-derived
feeds 1 series
vcix-fx-tgi-derived
feeds 1 series
vcix-ground-truth-derived
feeds 1 series
binance-p2p
feeds 2 series
kayak-flight-fares
feeds 1 series
funding-rounds-derived
feeds 2 series