ESG, AI Tools & Capstone Project
Integrate ESG factors into valuation using SEBI BRSR data, leverage AI for research and modeling, build automated KNIME workflows, and deliver your complete capstone valuation project.
Learning Objectives
- Integrate ESG factors into DCF valuation using SEBI BRSR data and sustainability-adjusted WACC/growth
- Use ChatGPT as an AI-powered research assistant for assumption generation, scenario creation, and report drafting
- Build automated valuation workflows in KNIME for scalable, repeatable analysis
- Create an executive valuation dashboard in Power BI/Looker Studio for board-level communication
- Synthesize all course concepts into a complete capstone valuation with investment recommendation
PART A — ESG-INTEGRATED VALUATION
18.1 Why ESG Matters for Valuation
ESG is not a separate "sustainability" overlay — it is a set of factors that directly affect the value drivers we have studied throughout this course. Environmental regulation changes future capex. Social license determines revenue growth. Governance quality affects the cost of capital. Ignoring ESG means ignoring risks and opportunities that are already priced into some securities and will inevitably be priced into all.
| ESG Factor | Valuation Channel | Impact |
|---|---|---|
| E — Carbon emissions | Capex, margins, terminal value | Carbon-intensive companies face higher future capex (decarbonization), potential carbon taxes (margin compression), and stranded asset risk (terminal value impairment) |
| E — Water scarcity | Operating costs, growth | Water-intensive industries (thermal power, textiles, steel) face rising water costs and regulatory restrictions on expansion |
| S — Labor practices | Margins, growth | Companies with poor labor practices face higher attrition, training costs, and regulatory risk. IT services companies with high employee satisfaction have lower attrition → higher margins. |
| S — Community relations | Growth, terminal value | Land acquisition delays, protests, and license-to-operate issues can delay or cancel projects, directly impacting growth |
| G — Board independence | WACC (Ke) | Companies with weak governance and promoter entrenchment face a higher cost of equity — investors demand a governance risk premium |
| G — Related-party transactions | Cash flows, terminal value | Value transfer to promoter entities reduces cash available to minority shareholders. Common in Indian conglomerates. |
18.2 The SEBI BRSR Framework: India's ESG Data Standard
The Business Responsibility and Sustainability Report (BRSR), mandated by SEBI for the top 1,000 listed companies from FY2023, is India's standardized ESG disclosure framework. It provides quantitative data that can be directly integrated into valuation models.
18.2.1 Key BRSR Metrics for Valuation
| BRSR Section | Key Metrics | Valuation Use |
|---|---|---|
| Principle 2 — Sustainable goods | % of R&D spend on sustainable products, % of revenue from sustainable products | Adjust revenue growth for green product mix; higher sustainable revenue → premium growth multiple |
| Principle 3 — Employee wellbeing | Attrition rate, % of employees covered by unions, training hours/employee, gender diversity ratio | Adjust margins for HR risk; high attrition = higher future opex |
| Principle 4 — Stakeholder engagement | CSR spend as % of PAT, community investment | License-to-operate risk adjustment to terminal growth rate |
| Principle 5 — Human rights | Grievances filed and resolved, human rights policy coverage | Litigation risk and regulatory risk premium in WACC |
| Principle 6 — Environment | GHG emissions (Scope 1 & 2), energy intensity, water consumption, waste generated, EHS compliance | Carbon cost projection, capex for decarbonization, potential regulatory penalties |
| Principle 9 — Governance | Related-party transactions as % of revenue, independent director %, board meetings, audit qualifications | Governance risk premium in cost of equity; related-party transactions → haircut to FCFF |
18.3 Integrating ESG into DCF Valuation
ESG factors enter the DCF through three channels: cash flows (revenue, margins, capex), discount rate (WACC), and terminal value (long-run growth). The framework below maps ESG risks to specific DCF adjustments:
import numpy as np
import pandas as pd
def esg_adjusted_dcf(base_fcff, base_wacc, base_terminal_g,
esg_scores, forecast_years=5):
"""
Adjust a DCF valuation for ESG factors.
Parameters
----------
base_fcff : list — baseline FCFF for forecast years
base_wacc : float — baseline WACC
base_terminal_g : float — baseline terminal growth
esg_scores : dict with keys:
'environmental_score' : float — 0 to 100 (100 = best)
'social_score' : float — 0 to 100
'governance_score' : float — 0 to 100
'carbon_intensity' : float — tCO2e / Rs. Cr revenue
'attrition_rate' : float — annual employee attrition %
'related_party_pct' : float — related-party transactions as % of revenue
Returns
-------
dict with base and ESG-adjusted DCF values.
"""
# --- ESG Score to Adjustments Mapping ---
# 1. WACC Adjustment: Governance & Environmental risk
# A company with governance score of 30/100 gets +150bp to Ke
# A company with governance score of 90/100 gets +0bp
governance_risk_premium = max(0, (75 - esg_scores['governance_score']) * 0.04)
environmental_risk_premium = max(0, (60 - esg_scores['environmental_score']) * 0.03)
esg_wacc_adj = (governance_risk_premium + environmental_risk_premium) / 100
adjusted_wacc = base_wacc + esg_wacc_adj
# 2. Cash Flow Adjustment: Environmental (carbon cost) & Social (attrition)
carbon_cost_per_tonne = 10 # USD/tonne CO2e; India may introduce carbon pricing
usd_inr = 83
carbon_cost = (esg_scores['carbon_intensity'] * carbon_cost_per_tonne * usd_inr
/ 1e7) # Convert to Rs. Cr per Rs. Cr revenue
# Attrition: high attrition → 2-5% margin impact from hiring/training costs
attrition_impact = max(0, (esg_scores['attrition_rate'] - 15) * 0.001)
adjusted_fcff = []
for fcff in base_fcff:
# Assume FCFF ≈ 15% of revenue; carbon cost as % of revenue
adjusted_fcff.append(fcff * (1 - carbon_cost - attrition_impact))
# 3. Terminal Growth Adjustment: Governance (sustainability of moat)
gov_score = esg_scores['governance_score']
if gov_score >= 80:
tg_adj = 0 # Strong governance → no haircut
elif gov_score >= 50:
tg_adj = -0.005 # Moderate → -0.5%
else:
tg_adj = -0.015 # Weak → -1.5%
adjusted_terminal_g = base_terminal_g + tg_adj
# 4. Related-Party Transaction Haircut
rpt_haircut = max(0, (esg_scores['related_party_pct'] - 5) * 0.01)
adjusted_fcff = [f * (1 - rpt_haircut) for f in adjusted_fcff]
# --- Recompute DCF ---
n = len(adjusted_fcff)
pv_base = sum(fcff / (1 + base_wacc) ** (t + 0.5) for t, fcff in enumerate(base_fcff, 1))
tv_base = base_fcff[-1] * (1 + base_terminal_g) / (base_wacc - base_terminal_g)
ev_base = pv_base + tv_base / (1 + base_wacc) ** n
pv_adj = sum(fcff / (1 + adjusted_wacc) ** (t + 0.5) for t, fcff in enumerate(adjusted_fcff, 1))
tv_adj = adjusted_fcff[-1] * (1 + adjusted_terminal_g) / (adjusted_wacc - adjusted_terminal_g)
ev_adj = pv_adj + tv_adj / (1 + adjusted_wacc) ** n
esg_discount = (1 - ev_adj / ev_base) * 100
print(f"ESG-ADJUSTED DCF VALUATION")
print(f"{'='*55}")
print(f" ESG Score: E={esg_scores['environmental_score']:.0f} "
f"S={esg_scores['social_score']:.0f} "
f"G={esg_scores['governance_score']:.0f}")
print(f"\n WACC Adjustment: +{esg_wacc_adj*100:.1f}%")
print(f" Adjusted WACC: {adjusted_wacc*100:.2f}%")
print(f" Terminal Growth Adj: {tg_adj*100:+.0f}bp")
print(f" Carbon Cost Impact: −{carbon_cost*100:.1f}% of FCFF")
print(f" RPT Haircut: −{rpt_haircut*100:.1f}% of FCFF")
print(f"\n Base Enterprise Value: Rs. {ev_base:,.0f} Cr")
print(f" ESG-Adjusted EV: Rs. {ev_adj:,.0f} Cr")
print(f" ESG Discount/Premium: {esg_discount:.1f}%")
print(f" {'⚠ ESG RISK — Value reduced' if esg_discount > 0 else '✓ ESG Strength — Value premium'}")
return {
'base_ev': ev_base, 'esg_ev': ev_adj,
'esg_discount_pct': esg_discount,
'adj_wacc': adjusted_wacc, 'adj_terminal_g': adjusted_terminal_g,
'adj_fcff': adjusted_fcff,
}
# --- Example: ESG-adjusted DCF for an Indian manufacturing company ---
esg_scores_example = {
'environmental_score': 45, # Below average — high emissions
'social_score': 65, # Average
'governance_score': 55, # Below average — related-party concerns
'carbon_intensity': 120, # 120 tCO2e / Cr revenue (high — steel/cement)
'attrition_rate': 18, # 18% annual attrition (moderate-high)
'related_party_pct': 12, # 12% of revenue is RPT (high)
}
base_fcff_example = [800, 920, 1050, 1180, 1300] # Rs. Cr
esg_result = esg_adjusted_dcf(
base_fcff_example, base_wacc=0.105, base_terminal_g=0.035,
esg_scores=esg_scores_example
)
PART B — AI-POWERED VALUATION WITH CHATGPT
18.4 ChatGPT as a Valuation Research Assistant
AI tools like ChatGPT are transformative for valuation practitioners — not because they replace analyst judgment, but because they dramatically accelerate research, assumption generation, and report drafting. The key is using AI at the right points in the valuation workflow, with the right prompts, and always with human verification.
18.4.1 The AI-Augmented Valuation Workflow
| Valuation Step | AI Role | Human Role |
|---|---|---|
| 1. Industry Research | Summarize industry trends, competitive landscape, regulatory changes. Prompt: "Summarize the key trends affecting the Indian paint industry, including market size, growth drivers, competitive dynamics, and regulatory factors." | Verify facts, identify gaps, add proprietary knowledge |
| 2. Assumption Generation | Suggest plausible ranges for growth, margins, capex. Prompt: "For a mature Indian consumer company with 40% market share, what is a reasonable 5-year revenue CAGR range? What factors would push it to the high or low end?" | Select the specific number, justify with company-specific evidence |
| 3. Scenario Creation | Generate bull/base/bear narratives. Prompt: "Create three scenarios for Asian Paints: a bear case driven by Grasim's entry, a base case of continued leadership, and a bull case of market expansion plus adjacencies." | Quantify each scenario, assign probabilities, ensure internal consistency |
| 4. Code Assistance | Debug Python code, suggest optimizations, generate boilerplate. Prompt: "Here is my FCFF computation function. Add error handling for missing yfinance fields and a fallback for companies with no debt data." | Review logic, test edge cases, adapt to specific data structure |
| 5. Report Drafting | Draft the investment thesis, risk factors, and executive summary. Prompt: "Write a 300-word investment thesis for Infosys based on the following DCF output: [paste summary]. Include key assumptions, upside catalysts, and risks." | Refine language, add nuance, ensure compliance with institutional standards |
| 6. Presentation Outline | Structure the investment committee presentation. Prompt: "Create a 12-slide outline for an investment committee presentation on a BUY recommendation for Titan, covering business overview, industry, financial analysis, DCF, relative valuation, ESG, risks, and catalysts." | Populate with actual charts, rehearse, prepare Q&A |
18.4.2 Effective Prompts for Valuation Tasks
# Example: Using ChatGPT API for automated assumption research
# (Requires OpenAI API key — included for illustration)
def ai_assumption_research(company_name, sector):
"""
Generate valuation assumption ranges using AI.
In practice, this would call the ChatGPT API.
Shown here as a template with sample prompt structure.
"""
prompt = f"""
You are an expert equity research analyst covering Indian companies.
Company: {company_name}
Sector: {sector}
Based on your knowledge of this company and sector (as of early 2026),
provide plausible ranges for the following DCF assumptions for a 5-year
forecast. For each, give a LOW, BASE, and HIGH estimate with a one-line
justification.
1. Revenue CAGR (next 5 years)
2. EBITDA Margin (steady-state)
3. Capex as % of Revenue
4. Sustainable ROIC
5. Key upside risk to revenue
6. Key downside risk to margins
Format the response as a structured table.
"""
# response = openai.ChatCompletion.create(
# model="gpt-4",
# messages=[{"role": "user", "content": prompt}]
# )
# return response.choices[0].message.content
return f"Prompt template for: {company_name}\n{prompt}"
# Example prompt structure
sample_prompt = ai_assumption_research("Asian Paints", "Consumer Discretionary — Paints")
print(sample_prompt)
PART C — AUTOMATED VALUATION WORKFLOWS IN KNIME
18.5 Building Automated Valuation Pipelines in KNIME
KNIME Analytics Platform is an open-source, no-code/low-code workflow tool. It allows you to build automated valuation pipelines visually — connecting nodes for data extraction, transformation, computation, and visualization. While Python (used throughout this course) gives you maximum flexibility, KNIME gives you reproducibility and auditability — every step is documented in the workflow.
18.5.1 The KNIME Valuation Workflow
A standard automated valuation workflow in KNIME follows this structure:
PART D — CAPSTONE PROJECT
18.6 The Capstone Project: End-to-End Corporate Valuation
The capstone project is the culmination of this course. You will value a listed Indian company from scratch — applying every concept, tool, and framework from Chapters 1 through 18. This is the project you will showcase in interviews for investment banking, equity research, private equity, and corporate finance roles.
18.6.1 Capstone Deliverables Checklist
| # | Deliverable | Chapter Reference | Tool |
|---|---|---|---|
| 1 | Company & Industry Analysis (2 pages) | Ch 1–2 | Annual Report, Industry Reports, ChatGPT research |
| 2 | Historical Financial Analysis — Ratios, ROIC, Value Drivers | Ch 3–5 | Python (yfinance + pandas) |
| 3 | 5-Year Integrated Financial Forecast (IS, BS, CF) | Ch 7–9 | Python (IntegratedFinancialModel class) |
| 4 | Cost of Capital Estimation — WACC with Sensitivity | Ch 10–11 | Python (beta regression, WACC pipeline) |
| 5 | Complete DCF Valuation — with Tornado, Waterfall, Heatmaps | Ch 12–14 | Python (DCFValuation class) |
| 6 | Relative Valuation — Peer Group, P/E, P/B, EV/EBITDA | Ch 15–16 | Python (peer selection, multiples) |
| 7 | ESG Integration — BRSR Analysis, ESG-Adjusted DCF | Ch 18 | Python + BRSR Report |
| 8 | Scenario Analysis — Monte Carlo Simulation | Ch 8 | Python |
| 9 | Executive Dashboard — One-Page Visual Summary | Ch 6, 14 | Power BI / Plotly / Looker Studio |
| 10 | Investment Recommendation Report (8–12 pages) | All | Word / Google Docs / LaTeX |
| 11 | 12-Minute Presentation with Defence | All | PowerPoint / Google Slides |
18.6.2 Suggested Capstone Companies
Choose one of these companies (or propose an alternative to your faculty):
| Company | Sector | Why Interesting for Valuation |
|---|---|---|
| Asian Paints | Consumer Discretionary | High ROIC franchise; new competitor entry (Grasim) threatens moat → test terminal value assumptions |
| Titan Company | Consumer Discretionary | Exceptional brand + growth; extremely high P/B (76x) → reconcile DCF with multiples |
| Reliance Industries | Conglomerate | Sum-of-parts required; Jio/Retail/O2C have different growth, margins, and WACC → divisional valuation |
| TCS / Infosys | IT Services | High-margin, cash-rich; FCFE vs FCFF choice; AI disruption risk to terminal value |
| HDFC Bank | Banking | Financial institution valuation; dividend discount model; post-merger integration risks and synergies |
| Tata Motors | Automotive | Cyclical; JLR + domestic CV/PV; EV transition capex; normalized earnings essential |
| Sun Pharma | Pharma | US FDA risk premium; R&D pipeline valuation; specialty pharma vs generics mix |
| NTPC | Power / Utilities | Regulated returns; renewable transition; ESG integration (coal phase-down risk) |
18.7 Capstone Report Structure and Grading
18.7.1 Report Structure (8–12 pages)
18.7.2 Presentation Defence (12 minutes + Q&A)
| Slide | Content | Time |
|---|---|---|
| 1 | Title + Recommendation (Buy/Hold/Sell, Target Price) | 30 sec |
| 2 | Company & Industry Snapshot | 1 min |
| 3 | Financial Analysis Highlights | 1.5 min |
| 4 | Forecast & Key Assumptions | 2 min |
| 5 | WACC Derivation | 1 min |
| 6 | DCF Output + Sensitivity | 2 min |
| 7 | Relative Valuation Cross-Check | 1 min |
| 8 | ESG & Scenario Analysis | 1 min |
| 9 | Investment Recommendation + Risks | 1.5 min |
| 10 | Appendix (supporting data) | — |
18.8 Course Recap: The Valuation Toolkit
Over 18 chapters, you have built a complete corporate valuation toolkit. Here is what you now know how to do:
| Capability | Chapters | Tool |
|---|---|---|
| Read and adjust financial statements for valuation | 1–3 | Python (yfinance, pandas) |
| Compute and interpret financial ratios | 4 | Python |
| Analyze ROIC and economic profit | 5 | Python |
| Build interactive financial dashboards | 6 | Power BI / Looker Studio |
| Forecast revenue, costs, and margins | 7 | Python (Prophet, ARIMA, regression) |
| Build scenario analysis and Monte Carlo simulation | 8 | Python |
| Build integrated 3-statement models | 9 | Python (IntegratedFinancialModel) |
| Estimate cost of equity (CAPM, beta, ERP) | 10 | Python |
| Compute WACC with automated pipeline | 11 | Python |
| Compute FCFF/FCFE and discount to present value | 12 | Python |
| Estimate terminal value and derive equity value | 13 | Python |
| Build complete DCF with sensitivity analysis | 14 | Python (DCFValuation class) |
| Apply P/E, P/B, PEG relative valuation | 15 | Python |
| Apply EV multiples and build peer dashboards | 16 | Python (Plotly) |
| Value startups and M&A transactions | 17 | Python |
| Integrate ESG, use AI tools, automate workflows | 18 | Python, ChatGPT, KNIME |
Key Takeaways
ESG factors enter valuation through cash flows, WACC, and terminal growth. The SEBI BRSR framework provides the data. High emitters face carbon cost and capex risk; weak governance commands a higher cost of equity.
AI augments, not replaces, the analyst. Use ChatGPT for research synthesis, assumption generation, code assistance, and report drafting. Always verify, never outsource judgment.
KNIME automates repeatable valuation workflows. Build once, run on 100 companies. Python for computation, KNIME for orchestration. Together they create an institutional-grade valuation infrastructure.
The capstone project is your professional portfolio piece. An 8–12 page report + 12-minute defence demonstrating every skill from this course. This is what you show in interviews.
Your judgment is the value. The model is a structure for thinking. The recommendation is a statement about the future. Make it one you can defend with evidence, logic, and humility.
Test Your Understanding
1. Through which three channels do ESG factors primarily enter a DCF valuation?
2. What is the SEBI BRSR framework and why does it matter for valuation?
3. What is the most appropriate role for ChatGPT in a valuation workflow?
4. A company has a governance score of 35/100 on BRSR metrics, with related-party transactions at 18% of revenue. What is the likely valuation impact?
5. What is the single most important piece of advice for a capstone valuation defence?