# Industry Economics & Competitiveness - Assessments List

The <a href="https://www.intratec.us/solutions/industry-economics-competitiveness" target="_blank" rel="noopener">Industry Economics & Competitiveness</a> report is a monthly program measuring manufacturing competitiveness across 7 industrial sectors, built for investors, policymakers, and procurement leaders.

This assessment list presents the **19,890 assessments** currently published across **33 countries**, organized into **14 pillars** plus country scores and aggregates. The finder below locates any individual series, and there is also the [country assessments guides](/assessments-catalog/country-assessment-guides/) page with direct links for the complete assessment guide of each country with full definitions for every assessment.

> Intratec may add, retire, or change assessments in line with its commitment to relevant information. The list below reflects the current monthly report.

## Find an assessment {#find-an-assessment}

<style>
.af-controls { display: flex; flex-wrap: wrap; gap: 0.5rem; align-items: center; margin: 1rem 0; }
.af-controls input, .af-controls select {
  height: 2.5rem; margin: 0; box-sizing: border-box;
  padding: 0.4rem 0.6rem; border: 1px solid var(--accordion-border-color, #d0d7de);
  border-radius: 6px; font-size: 0.9rem; background-color: inherit; color: inherit;
}
.af-controls input { flex: 1 1 240px; }
#af-n { font-size: 0.85rem; opacity: 0.7; margin-left: auto; white-space: nowrap; }
.af-wrap { max-height: 70vh; overflow-y: auto; border: 1px solid var(--accordion-border-color, #d0d7de); border-radius: 6px; margin-bottom: 2.5rem; }
.af-table { width: 100%; border-collapse: collapse; font-size: 0.85rem; margin: 0; }
.af-table th { position: sticky; top: 0; background: var(--sidebar-bg-color, #f6f8fa); text-align: left; padding: 0.5rem 0.6rem; border-bottom: 2px solid var(--accordion-border-color, #d0d7de); }
.af-table td { padding: 0.35rem 0.6rem; border-bottom: 1px solid var(--accordion-border-color, #eaeef2); vertical-align: top; }
/* Auto layout (table can overflow -> .af-wrap shows a horizontal scrollbar instead
   of squishing columns). Code is capped at 15ch and allowed to wrap (overflow-wrap)
   so a rare long code breaks instead of widening the column and stealing space from
   the wrappable text columns. The min-widths floor those text columns so a narrow
   viewport triggers the horizontal scrollbar rather than squishing them. */
.af-table th:nth-child(4), .af-table td:nth-child(4) { width: 15ch; min-width: 15ch; max-width: 15ch; overflow-wrap: anywhere; }
.af-table th:nth-child(1), .af-table td:nth-child(1) { min-width: 22ch; }  /* Assessment name */
.af-table th:nth-child(2), .af-table td:nth-child(2) { min-width: 20ch; }  /* Category */
.af-table th:nth-child(5), .af-table td:nth-child(5) { min-width: 18ch; }  /* Delivery methods */
/* "Assessment details" (v1 col 6) and the product link share one fixed width so
   they line up. The product link is always the LAST column (v2 drops the
   Assessment-details column), so :last-child targets it in both variants. */
.af-table th:nth-child(6), .af-table td:nth-child(6),
.af-table th:last-child, .af-table td:last-child { width: 13ch; min-width: 13ch; max-width: 13ch; }
</style>
<div class="af-controls">
  <input id="af-q" type="search" placeholder="Filter by assessment, code, or country&hellip;" aria-label="Filter">
  <select id="af-cat" aria-label="Pillar"><option value="">All pillars</option>
    <option value="BP1">Base Pillar 1 — Manufacturing Labor Costs</option>
    <option value="BP2">Base Pillar 2 — Construction Labor Costs</option>
    <option value="BP3">Base Pillar 3 — Capital &amp; Construction Costs</option>
    <option value="BP4">Base Pillar 4 — Energy &amp; Utilities Costs</option>
    <option value="BP5">Base Pillar 5 — Logistics &amp; Infrastructure</option>
    <option value="BP6">Base Pillar 6 — Freight Costs</option>
    <option value="BP7">Base Pillar 7 — Macroeconomic Environment</option>
    <option value="BP8">Base Pillar 8 — Domestic Tax Environment</option>
    <option value="SP1">Specific Pillar 1 — Commodity Prices</option>
    <option value="SP2">Specific Pillar 2 — Feedstock-to-Product Margin</option>
    <option value="SP3">Specific Pillar 3 — Industrial Production</option>
    <option value="SP4">Specific Pillar 4 — Global Trade Integration</option>
    <option value="SP5">Specific Pillar 5 — Tariff Protection &amp; Market Access</option>
    <option value="SP6">Specific Pillar 6 — Domestic Market Size</option>
    <option value="none">Scores &amp; Aggregates</option>
  </select>
  <select id="af-country" aria-label="Country"><option value="">All countries</option>
    <option value="USA">United States</option>
    <option value="AUS">Australia</option>
    <option value="BEL">Belgium</option>
    <option value="BRA">Brazil</option>
    <option value="CAN">Canada</option>
    <option value="CHL">Chile</option>
    <option value="CHN">China</option>
    <option value="COL">Colombia</option>
    <option value="CZE">Czech Republic</option>
    <option value="FIN">Finland</option>
    <option value="FRA">France</option>
    <option value="DEU">Germany</option>
    <option value="HUN">Hungary</option>
    <option value="IND">India</option>
    <option value="IDN">Indonesia</option>
    <option value="ITA">Italy</option>
    <option value="JPN">Japan</option>
    <option value="MEX">Mexico</option>
    <option value="NLD">Netherlands</option>
    <option value="NOR">Norway</option>
    <option value="PHL">Philippines</option>
    <option value="POL">Poland</option>
    <option value="RUS">Russia</option>
    <option value="SAU">Saudi Arabia</option>
    <option value="SGP">Singapore</option>
    <option value="ZAF">South Africa</option>
    <option value="KOR">South Korea</option>
    <option value="ESP">Spain</option>
    <option value="SWE">Sweden</option>
    <option value="TWN">Taiwan</option>
    <option value="THA">Thailand</option>
    <option value="TUR">Turkey</option>
    <option value="GBR">United Kingdom</option>
  </select>
  <span id="af-n">Loading&hellip;</span>
</div>
<div class="af-wrap"><table class="af-table"><thead><tr><th>Assessment name</th><th>Category</th><th>Country</th><th>Code</th><th>Delivery methods</th><th>Assessment details</th><th>Full report page</th></tr></thead><tbody id="af-body"></tbody></table></div>
<noscript>This searchable list requires JavaScript. Browse the country pages from the sidebar instead.</noscript>
<script>window.__afLabels = {"none": "Scores & Aggregates", "BP1": "Base Pillar 1 — Manufacturing Labor Costs", "BP2": "Base Pillar 2 — Construction Labor Costs", "BP3": "Base Pillar 3 — Capital & Construction Costs", "BP4": "Base Pillar 4 — Energy & Utilities Costs", "BP5": "Base Pillar 5 — Logistics & Infrastructure", "BP6": "Base Pillar 6 — Freight Costs", "BP7": "Base Pillar 7 — Macroeconomic Environment", "BP8": "Base Pillar 8 — Domestic Tax Environment", "SP1": "Specific Pillar 1 — Commodity Prices", "SP2": "Specific Pillar 2 — Feedstock-to-Product Margin", "SP3": "Specific Pillar 3 — Industrial Production", "SP4": "Specific Pillar 4 — Global Trade Integration", "SP5": "Specific Pillar 5 — Tariff Protection & Market Access", "SP6": "Specific Pillar 6 — Domestic Market Size"};</script>
<script>window.__pbase = "https://www.intratec.us/solutions/industry-economics-competitiveness";</script>
<script>
(function () {
  if (window.__afWired) return;
  window.__afWired = true;
  var CAP = 500, DATA = null, t;
  function esc(s){ return (s + '').replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;'); }
  function deliv(a){ return a ? 'PDF, API, Excel, Power BI' : 'PDF'; }
  function purl(d){ return (window.__pbase || '') + '/' + (d.p || 'country') + '/' + (d.h.split('/')[2] || ''); }
  function render() {
    var q = document.getElementById('af-q'), cat = document.getElementById('af-cat'),
        country = document.getElementById('af-country'),
        count = document.getElementById('af-n'), body = document.getElementById('af-body');
    if (!body) return;
    if (!DATA) { if (count) count.textContent = 'Loading\u2026'; return; }
    var L = window.__afLabels || {};
    var terms = q.value.toLowerCase().split(/\s+/).filter(Boolean);
    var c = cat.value, l = country.value;
    var html = '', shown = 0, matched = 0;
    for (var i = 0; i < DATA.length; i++) {
      var d = DATA[i];
      if (c && d.c !== c) continue;
      if (l && d.k !== l) continue;
      if (terms.length) {
        var hay = (d.n + ' ' + (L[d.c] || '') + ' ' + d.k + ' ' + d.d).toLowerCase(), ok = true;
        for (var j = 0; j < terms.length; j++) { if (hay.indexOf(terms[j]) === -1) { ok = false; break; } }
        if (!ok) continue;
      }
      matched++;
      if (shown < CAP) {
        html += '<tr><td>' + esc(d.n) + '</td><td>' + esc(L[d.c] || 'Scores & Aggregates') + '</td><td>' + esc(d.k)
              + '</td><td>' + esc(d.d) + '</td><td>' + deliv(d.a)
              + '</td><td><a href="' + d.h + '">View</a></td>'
              + '<td><a href="' + purl(d) + '" target="_blank" rel="noopener">View</a></td></tr>';
        shown++;
      }
    }
    body.innerHTML = html;
    count.textContent = matched.toLocaleString('en-US') + ' of ' + DATA.length.toLocaleString('en-US')
      + ' assessments' + (matched > CAP ? ' (showing first ' + CAP + ')' : '');
  }
  function debounced() { clearTimeout(t); t = setTimeout(render, 150); }
  function load() {
    if (!document.getElementById('af-body')) return;
    if (DATA) { render(); return; }
    render();  // show "Loading…"
    fetch('/static/iie-assessments.json').then(function (r) { return r.json(); })
      .then(function (j) { DATA = j; render(); })
      .catch(function () { var c = document.getElementById('af-n'); if (c) c.textContent = 'Could not load assessments data.'; });
  }
  document.addEventListener('input', function (e) { if (e.target && e.target.id === 'af-q') debounced(); });
  document.addEventListener('change', function (e) {
    if (e.target && ['af-cat', 'af-country'].indexOf(e.target.id) !== -1) render();
  });
  document.addEventListener('turbo:load', load);
  if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', load);
  else load();
})();
</script>
