Overview

This codebook defines the 28 coded fields used to record sustainability disclosure practices by SGX-listed issuers. The public dashboard displays 18 disclosure indicators; the full codebook also includes identification, report metadata, and verification fields used for provenance and expanded company profiles. The tracker records what companies disclose, not how well they perform. No scores or rankings are computed.

Unit of observation: One issuer-year (a single company’s sustainability report for one fiscal year).

Variables

Identification

VariableTypeDescription
issuer_namestringFull legal name of the reporting entity as stated on the cover page
sgx_tickerstringSGX stock code (e.g., "D05" for DBS). If not stated in the report, leave as empty string and flag in ambiguities.
fiscal_year_endstring (YYYY-MM-DD)End date of the fiscal year covered
report_urlstringURL to the original sustainability report. Populated after coding from public sources.
report_typeenumstandalone_sustainability | integrated_report | annual_report_section | none_found

Framework references

Each variable is "yes" if the report explicitly names the framework. A report that follows the structure of a framework without naming it does NOT count. A report that mentions the framework only in a forward-looking statement (e.g., "we plan to adopt ISSB standards") counts as "no" but should be noted in the ambiguities array.

VariableTypeValuesDescription
gri_mentionedstring"yes" | "no"Report explicitly names the GRI Standards as a framework used, or includes a GRI content index
issb_s1_mentionedstring"yes" | "no"Report explicitly references IFRS S1 or ISSB S1 by name
issb_s2_mentionedstring"yes" | "no"Report explicitly references IFRS S2 or ISSB S2 by name
tcfd_mentionedstring"yes" | "no"Code “yes” only when the report presents TCFD as used for this report: a present-tense alignment statement (for example “prepared in line with” or “with reference to” the TCFD recommendations), a TCFD content index or a mapping of this report’s disclosures to TCFD, TCFD listed among the frameworks the report currently applies, or a current TCFD supporter badge. Code “no” when TCFD appears only as past use (for example “in 2022 we conducted a scenario analysis in line with TCFD”), as the framework that IFRS S2 replaced, in a glossary or list of abbreviations, in a third-party template column (for example an SGX or GSMA template), or in a forward-looking commitment.
tnfd_mentionedstring"yes" | "no"Report explicitly references TNFD. General biodiversity discussion without naming TNFD counts as "no"
sdg_mentionedstring"yes" | "no"Report explicitly references UN SDGs or specific SDG numbers/icons

Climate disclosures

VariableTypeValuesDescription
scope1_disclosedenum"yes_quantitative" | "yes_qualitative" | "no"yes_quantitative = specific numerical figure provided; yes_qualitative = discussed but no number; no = not mentioned. A chart showing emissions counts as quantitative if a number can be read from it.
scope2_disclosedenum"yes_quantitative" | "yes_qualitative" | "no"Same rules as scope1
scope3_disclosedenum"yes_quantitative" | "yes_qualitative" | "no"Same rules as scope1. Selected Scope 3 categories with numbers count as yes_quantitative. Note which categories are covered in ambiguities.
emissions_methodology_statedenum"yes" | "no" | "not_applicable"yes = names a specific methodology (e.g., GHG Protocol, ISO 14064) or describes organizational boundary approach; no = figures reported without methodology; not_applicable = no emissions disclosed
climate_targets_setenum"yes" | "no"yes = at least one quantitative climate target with a target year; no = no quantitative targets with timelines
transition_plan_presentenum"yes" | "no"yes = describes HOW the company intends to achieve climate targets with specific actions, milestones, or investments; no = only targets stated without a plan

Assurance

VariableTypeValuesDescription
external_assuranceenum"yes" | "no"yes = independent third-party assurance statement included or referenced with named provider. Internal audit and board sign-off do NOT count.
assurance_provider_namestringprovider name | "not_applicable"Name exactly as stated in report; "not_applicable" if no external assurance
assurance_standardenum"isae_3000" | "isae_3410" | "aa1000" | "other" | "not_stated" | "not_applicable"Standard used; "not_applicable" if no external assurance. If "other", specify in ambiguities.
assurance_scopeenum"emissions_only" | "selected_indicators" | "full_report" | "not_stated" | "not_applicable" | "other"Scope of engagement; "not_applicable" if no external assurance

Governance

VariableTypeValuesDescription
board_sustainability_statementenum"yes" | "no"yes = substantive statement (at least one full paragraph) from board/chair/CEO on sustainability. A single sentence in a general letter does NOT count.
board_sustainability_committeeenum"yes" | "no"yes = a board-level committee with explicit sustainability oversight responsibility. Management-level committees do NOT count.
sustainability_linked_compensationenum"yes" | "no"yes = ESG/sustainability KPIs are explicitly part of executive compensation, bonus structures, or incentive plans

Nature and biodiversity

VariableTypeValuesDescription
nature_biodiversity_discussionenum"yes" | "no"yes = at least one full paragraph discussing biodiversity, ecosystem services, deforestation, land use, water-related ecological impacts, or nature-related risks. A single sentence mention does NOT count.
tnfd_aligned_disclosureenum"yes" | "no"yes = nature-related disclosures explicitly described as TNFD-aligned, or TNFD LEAP approach applied and described

Verification metadata

VariableTypeDescription
coded_byenum"llm" | "human" | "llm_verified"
verification_datestring (YYYY-MM-DD)Date the coding was last verified. Empty string for initial LLM coding.

Source-file notes

The source coding JSONs also store two supporting fields used for verification and dispute resolution. These notes are retained in the source files and schema, but are not displayed in the public dashboard export or counted among the 28 coded fields.

FieldTypeDescription
evidenceobjectField-level page references and short supporting quotes used to justify each coded value
ambiguitiesarray of stringsFree-text notes on borderline cases, visual evidence, or coding judgments for that issuer-year

Evidence object

Every coded variable must have a corresponding entry in the evidence object with:

Ambiguities array (source files only)

An array of strings documenting edge cases, borderline decisions, or coding ambiguities. Each string should identify the variable and explain the decision. Empty array [] if no ambiguities. This field is retained in the source coding files for auditability and is not shown in the public tracker table.

Coding rules

  1. Base every answer on the attached report only. Do not use training data, prior knowledge, or external sources.
  2. Use only controlled vocabulary values. Do not create new categories or paraphrase allowed values.
  3. When in doubt, code conservatively. Prefer "yes_qualitative" over "yes_quantitative" if unclear; prefer "no" if the mention is too vague. Explain in ambiguities.
  4. Handle visuals carefully. Tag evidence from charts/infographics as [FROM VISUAL: ...] and flag in ambiguities for human verification.
  5. Read the entire report including appendices, assurance statements, GRI indexes, and data tables before coding.

Coding rules added in version 1.2

  1. Framework names in general. A framework named only in a glossary or list of abbreviations, with no other mention, counts as “no”. A framework explicitly named elsewhere in the report’s content (for example as the source of a diagram, or in a description of work already done) counts as named. Mentions that are only about the future (plans, intentions, “exploring”, “considering”, “monitoring the applicability of”) count as “no” (framework preamble). Generic phrases such as “IFRS Sustainability Disclosure Standards” or “ISSB standards” do not name IFRS S1 or IFRS S2. Wording quoted from a standard’s own requirements, for example in an IFRS S2 content index, does not count as naming that framework (added in version 1.3).
  2. external_assurance. Code “yes” only if an assurance statement, opinion or conclusion is included in the report, or the report says external assurance was obtained and names the provider. If the report mentions group-level, sponsor or parent-company assurance, or an unnamed verifier, but includes no statement and names no provider, code “no”. Internal audit and board sign-off never count.
  3. board_sustainability_committee. Also “yes” when the report names a committee of the sponsor’s or parent’s board and says it oversees sustainability for this entity. Also “yes” when a board committee’s stated remit explicitly includes climate-related risks or environmental risk controls (for example an Audit and Risk Committee that reviews risk management systems “including climate-related risks”). A management committee (chaired by the CEO or senior managers, not a committee of the board) does not count. The board as a whole overseeing sustainability, with no named board committee, is “no”.
  4. scope1_disclosed and scope2_disclosed. A single combined Scope 1 and 2 figure, with no separate figure for each scope, is “yes_qualitative” for each scope. If the report gives each scope as a percentage share of a stated combined total, code “yes_quantitative”. A chart value that can be read counts as a figure.
  5. scope3_disclosed. A share or percentage of Scope 3 with no amount or total is “yes_qualitative”. Figures for selected categories count as “yes_quantitative” (codebook).
  6. emissions_methodology_stated. “yes” if the report names a GHG accounting standard or protocol (for example the GHG Protocol or ISO 14064), names emission-factor sources, or states its organisational or consolidation boundary (for example operational control, equity share, or “entities where the Group has management control”). A footnote that only mentions “updated emission factors” or “revised estimation methodologies”, without naming them, is “no”.
  7. transition_plan_present. “yes” if the report describes specific actions, milestones or investments showing how the company will meet its climate targets, even if it says a formal transition plan is still being developed. “no” if it gives only targets, generic initiatives or aspirations.
  8. sustainability_linked_compensation. “yes” when the report states that ESG or sustainability KPIs are part of executive or board pay, bonus or incentive plans, or that incentive plans are designed to support sustainability objectives. Also “yes” when the company’s own index (for example its IFRS S2 index) points its executive-remuneration disclosure to a page describing ESG metrics in the management scorecard. Pay linked only to general “performance” is “no”.
  9. nature_biodiversity_discussion. Count a full paragraph that discusses the company’s own nature-related risks, impacts, dependencies or opportunities, including how it manages them (for example biodiversity risk screening, habitat impacts, deforestation policy, land use as an ecological topic). Community volunteering alone (such as employee tree planting) does not count. Water efficiency or discharge compliance alone does not count as an ecological impact. A passing clause about land or building footprint does not count.
  10. tnfd_aligned_disclosure. “yes” if the report says its nature-related disclosures are prepared in line with, or with reference to, the TNFD recommendations and includes a TNFD content index or mapping, or applies the LEAP approach and describes the results.

Company profiles list all identified assurance providers and named standards rather than selecting one. A report published separately from the annual report is classified as a standalone sustainability report. Source quotations and internal review notes are retained privately, not displayed on the tracker.

Changes in version 1.3

Changes in version 1.2

Citation

APA:

Law, K. K. F. (2026). Singapore Sustainability Disclosure Tracker (Version 1.3) [Dataset]. https://kelvinlaw.me/tracker/tracker-live.html

BibTeX:

@misc{law2026sgtracker,
  author = {Law, Kelvin K. F.},
  title  = {Singapore Sustainability Disclosure Tracker},
  year   = {2026},
  version = {1.3},
  url    = {https://kelvinlaw.me/tracker/tracker-live.html}
}

Disclaimer

This tracker is for research and educational purposes only. It is not legal advice, investment advice, or a definitive compliance determination. Users should verify information against the original reports.

Access

The live tracker and codebook are free for academic and educational use. The coding files behind the tracker are not available on request.