Skip to content

MSCI Index Constituents

Try for free

Get the constituent lists MSCI publishes for its indexes: every security with its index weight, plus market class (developed, emerging, frontier), country and GICS sector. MSCI World, Emerging Markets, Frontier Markets or any of about 1,260 MSCI indexes. No login needed.

🌐 MSCI Index Constituents

Get the constituent lists MSCI publishes for its indexes as clean rows: every security with its index weight and rank, plus its market class (developed, emerging, frontier), country and GICS sector. MSCI World, MSCI Emerging Markets and MSCI Frontier Markets in one click, or any of the about 1,260 MSCI indexes with a published constituent list. No login, no API key. $0.17 per 1,000 constituents, platform usage included.

✨ Why use MSCI Index Constituents?

  • 🗺️ Grouped by market class: one run returns the developed (MSCI World), emerging (MSCI Emerging Markets) and frontier (MSCI Frontier Markets) lists, each row tagged with its class.
  • ⚖️ Full lists with weights: every constituent MSCI lists, with its closing weight and rank, not just the top 10.
  • 🏳️ Country and sector added: taken from MSCI's own country indexes and GICS sector indexes, with the source index named on each row.
  • 📚 About 1,260 indexes: regional, country, sector, size (IMI, small cap), factor and ESG indexes; list them all with their codes in one run.
  • 🏛️ Official source: read from MSCI's public Index Constituents page, with the as-of date of each list.
  • ⚡ Fast: the three market-class lists with country and sector take well under a minute.

🎯 Use cases

  • 📊 Build a country or sector breakdown of MSCI World, Emerging Markets or Frontier Markets.
  • 🧮 Compare a portfolio or fund with an MSCI benchmark, security by security.
  • 🔍 Check which securities of a country are in MSCI Emerging Markets and with what weight.
  • 🗂️ Keep a quarterly copy of MSCI index membership in your database or spreadsheet.
  • 🎓 Research index concentration: top-10 weight, number of constituents per market.

🚀 How to use

  1. Keep Market classes at developed, emerging and frontier, or pick the ones you need. Add other MSCI indexes by name or code under Indexes.
  2. Set Maximum constituents per index (empty = every constituent) and, if you like, a Countries filter.
  3. Click Start. The run takes a few seconds to under a minute.
  4. Download the dataset as JSON, CSV, Excel or XML, or read it through the API.

📥 Input

FieldWhat it does
marketClassesdeveloped (MSCI World), emerging (MSCI Emerging Markets), frontier (MSCI Frontier Markets). With nothing chosen at all, all three are saved.
indexesOther MSCI indexes by name as MSCI lists them (ACWI, JAPAN, EM (EMERGING MARKETS) IMI, WRLD/ENERGY) or by code (990100).
maxResultsPerIndexConstituents to save per index, largest weight first. Empty or 0 = all.
countriesOnly constituents from these countries (e.g. Japan, India).
addCountryAndSectorAdd country, sector and market class (on by default).
listIndexesSave the list of indexes (name, code, as-of date) instead of constituents.
indexSearchWith listIndexes: only indexes whose name contains one of these words.
{
  "marketClasses": ["developed", "emerging", "frontier"],
  "maxResultsPerIndex": 0
}

📤 Output

FieldDescription
indexName / indexCodeThe MSCI index, as MSCI names it, and its code
marketClassificationDeveloped Markets, Emerging Markets or Frontier Markets
securityNameSecurity as MSCI lists it (one row per share class)
weightPercentClosing weight in the index, in percent
rankPosition by weight (1 = largest)
country / countrySourceCountry, and the MSCI country index it was taken from
sector / sectorSourceGICS sector, and the MSCI sector index it was taken from
asOfDateDate of the constituent list MSCI publishes
indexConstituentCountNumber of constituents in the index on that date
sourceUrlMSCI's Index Constituents page
{
  "recordType": "constituent",
  "indexName": "WORLD",
  "indexCode": 990100,
  "marketClassification": "Developed Markets",
  "securityName": "NVIDIA",
  "weightPercent": 5.49461,
  "rank": 1,
  "country": "USA",
  "countrySource": "MSCI USA",
  "sector": "Information Technology",
  "sectorSource": "MSCI WRLD/INFORMATION TECH",
  "asOfDate": "2026-09-01",
  "indexConstituentCount": 1251,
  "sourceUrl": "https://www.msci.com/index-tools/constituents"
}

💰 Pricing

You pay per constituent saved ($0.17 per 1,000 on every plan); index-list rows cost the same. Platform usage (compute and proxy) is included, so that is the whole price.

Example: the three market-class lists in full (2,664 constituents on the 2026-09-01 lists) cost about $0.45. Runs that save nothing are not charged.

❓ FAQ

Is it legal to use this data? The lists are public on MSCI's website for anyone to view, with no login.

Do I need a login, an API key or my own proxy? No. The default Scrape.ly datacenter proxy is all the run needs.

How fresh is the data? Every run reads MSCI's page live. MSCI publishes each list as of a set date (shown in asOfDate, usually the start of the quarter), not intraday.

Why is country or sector empty for some securities? MSCI's constituent lists only give names and weights. Country and sector come from MSCI's country and sector indexes on the same page, and MSCI publishes no such list for some markets (see Limits). The actor leaves the field empty instead of guessing.

How many constituents can I get? All of them. There is no cap: leave the maximum empty to save every constituent of every chosen index.

Can I schedule it or use the API? Yes. Schedule a quarterly run, or call the actor from the Scrape.ly API, CLI or MCP server.

⚠️ Limits

  • Only indexes MSCI publishes a constituent list for on its Index Constituents page (about 1,260). Names and weights are exactly what MSCI publishes; no tickers, ISINs or prices are added.
  • Country comes from MSCI country indexes. MSCI publishes none on that page for some markets, e.g. Belgium, Ireland, New Zealand, Portugal (developed), Czech Republic, Egypt, Hungary (emerging) and most frontier markets; their securities have an empty country. Colombia, Greece and Peru come from MSCI's "All" country indexes.
  • Sector comes from the MSCI World and MSCI Emerging Markets sector indexes, so frontier-market securities and securities outside those two indexes (e.g. small caps) have an empty sector.
  • Securities are matched across indexes by the name MSCI lists; a name that appears in two different countries or sectors is left empty rather than guessed.
  • The Countries filter works only for countries with an MSCI country index on the page; for the others (e.g. Kenya, Czech Republic) the run says so and saves nothing for them.
//From the blog\\

Latest articles

All articles

The internet is full of data.
Start owning yours.

Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes.

No credit card. No setup calls.