Decoding CFA Practical Skills Modules (PSMs): Python vs. Financial Modeling

The CFA Program is designed to develop investment knowledge, analytical thinking and practical skills relevant to the finance industry. Alongside the curriculum and examinations, CFA Practical Skills Modules (PSMs) help candidates apply their learning to practical finance-related tasks.
Two modules that attract attention from candidates are Financial Modeling and Python Programming Fundamentals. Both focus on practical skills, but they approach financial analysis differently. Financial Modeling focuses on building a structured financial model, while Python Programming Fundamentals introduces coding and data analysis techniques.
If you are preparing for CFA Level I, understanding the difference between these modules can help you make an informed choice. This guide explains CFA Practical Skills Modules, compares Python with Financial Modeling, outlines the completion requirements and explores how CFA coaching at FinOptions can support your preparation.
What Are CFA Practical Skills Modules (PSMs)?
CFA Practical Skills Modules are practical learning modules included in the CFA Program. They complement the theoretical knowledge candidates develop through the CFA curriculum.
The modules use learning activities such as videos, multiple-choice questions, guided practice and case studies to help candidates apply relevant concepts.
According to the CFA Institute, each PSM generally takes 10–20 hours to complete and can be completed online at the candidate’s own pace.
Are CFA PSMs compulsory?
Yes. Candidates must complete at least one eligible Practical Skills Module at each CFA exam level to receive their exam results. The module must be completed by the applicable results-release deadline.
Candidates can generally begin a PSM after registration and complete it at a suitable point during their study period. However, candidates should check their account and the latest official requirements for deadlines and available modules.
Official reference: CFA Institute – Practical Skills Modules
CFA PSM: Python vs. Financial Modeling
Both modules develop practical skills, but their learning objectives differ.
| Comparison factor | Financial Modeling PSM | Python Programming Fundamentals PSM |
|---|---|---|
| Primary focus | Building a three-statement financial model | Learning Python programming fundamentals |
| Main tools | Microsoft Excel | Python and Jupyter Notebooks |
| Key learning areas | Financial statements, model structure, forecasting and scenario analysis | Variables, data structures, functions, data handling and visualization |
| Practical application | Understanding company performance and financial assumptions | Working with financial data and performing analysis using code |
| Suitable interests | Financial analysis, valuation and company modeling | Programming, data analysis and quantitative applications |
| Typical duration | 10–20 hours | 10–20 hours |
| Learning format | Online and self-paced | Online and self-paced |
Module availability depends on the CFA exam level and curriculum year. Always verify the latest options on the official CFA Institute website.
1. CFA Financial Modeling PSM: What Will You Learn?
The CFA Financial Modeling PSM introduces candidates to the process of building a structured financial model using Excel.
Financial models help analysts organise financial information, develop assumptions, forecast business performance and understand how different variables affect a company’s financial results.
Key learning areas
Candidates can develop an understanding of:
- Three-statement modeling: Connecting the income statement, balance sheet and cash flow statement.
- Revenue and cost forecasting: Estimating future financial performance using business assumptions.
- Working capital analysis: Understanding how operating activities affect cash flow.
- Debt and equity schedules: Representing financing activities within a financial model.
- Scenario analysis: Exploring how changes in assumptions affect projected results.
- Model structure and design: Organising spreadsheets so that calculations are clear, consistent and easier to review.
Why is Financial Modeling useful for CFA candidates?
Financial Modeling helps candidates connect accounting and financial statement concepts with practical analysis. It can also make the relationship between business assumptions and projected financial performance easier to understand.
For candidates interested in company analysis, equity research or valuation, learning how financial models work can provide useful context for applying financial concepts.
However, the CFA Financial Modeling PSM is a specific module offered by CFA Institute. Candidates should review its official curriculum and prerequisites before starting.
Official reference: CFA Institute – Financial Modeling PSM
2. CFA Python Programming Fundamentals PSM: What Will You Learn?
Python Programming Fundamentals introduces candidates to programming concepts and their use in finance-related data analysis.
Python is widely used to process datasets, automate repetitive tasks, create visualizations and perform quantitative analysis. The CFA PSM provides an introduction to applying these techniques through practical exercises.
Key learning areas
The module covers areas such as:
- Programming fundamentals: Understanding variables, data types, operators and conditional statements.
- Loops and functions: Learning how to structure reusable code and automate repetitive calculations.
- Jupyter Notebooks: Using an interactive environment to write, run and present code.
- Financial data analysis: Working with financial datasets and organising information for analysis.
- Data visualization: Presenting information through charts and graphical outputs.
- Portfolio analysis: Exploring calculations involving returns, risk and portfolio-related metrics.
The exact activities and learning objectives should be checked against the current module content provided by CFA Institute.
Why is Python useful for CFA candidates?
Python can help candidates understand how programming supports financial analysis, especially when working with larger datasets or repetitive calculations.
It may be particularly relevant to candidates interested in quantitative analysis, financial data science and technology-enabled investment research.
Prior programming experience is not listed as a prerequisite for the Python Programming Fundamentals PSM. Nevertheless, candidates should be comfortable with the relevant quantitative concepts and follow the official learning guidance.
Official reference: CFA Institute – Python Programming Fundamentals
3. Which CFA PSM Is Better: Python or Financial Modeling?
There is no universally better option. Your choice should depend on the skills you want to develop, your existing knowledge and the modules available for your CFA exam level.
Choose Financial Modeling if you want to understand company financials
Financial Modeling may be a suitable choice if you want to explore how financial statements connect, how business assumptions drive forecasts and how analysts build structured financial models.
It can complement your understanding of financial statement analysis and company evaluation.
Choose Python if you want to develop programming skills
Python Programming Fundamentals may be a suitable choice if you want to learn coding basics and explore how programming can support financial data analysis.
It can introduce you to working with datasets, automating calculations and presenting analytical results.
Quick decision guide
| Your learning objective | Module to consider |
|---|---|
| Understand three-statement financial modeling | Financial Modeling |
| Learn the fundamentals of Python | Python Programming Fundamentals |
| Explore financial forecasting through a structured model | Financial Modeling |
| Explore coding and data-driven analysis | Python Programming Fundamentals |
Remember that a module’s relevance to your interests does not automatically make it available at every CFA level.
4. Which PSMs Are Available at CFA Level I, II and III?
PSM availability changes according to the curriculum year and exam level. For candidates planning their 2026 or 2027 preparation, the CFA Institute lists the following options.
| CFA exam level | Examples of available PSMs |
|---|---|
| Level I | Financial Modeling; Python Programming Fundamentals |
| Level II | Python Programming Fundamentals; Python, Data Science, and AI; Equity Analyst Skills |
| Level III | Portfolio Development and Construction; pathway-related modules such as Macro Insights for Investing, Due Diligence and Managing Private Wealth Clients |
The exact options and module names may vary with curriculum updates. Check the official CFA PSM page for the year relevant to your registration.
Important: Completing the same PSM at one level does not satisfy the requirement at another level. Candidates must complete an eligible module for each level.
5. Can You Complete Both Python and Financial Modeling PSMs?
You may complete more than one PSM when the relevant modules are available to you. However, the CFA Program requires at least one eligible PSM per exam level, rather than requiring candidates to complete every available module.
For example, a Level I candidate may consider Financial Modeling or Python Programming Fundamentals. At Level II, the available choices differ, and a candidate who completed Python Programming Fundamentals at Level I must select a different eligible module to meet the Level II requirement.
Before choosing, consider:
- Your current CFA exam level.
- The modules available for your curriculum year.
- The skills you want to develop.
- Your study schedule and remaining time.
- The official completion deadline for your exam results.
Avoid selecting a module based only on its name or perceived career value. Review the learning objectives first.
6. How Should You Plan Your CFA PSM Alongside Exam Preparation?
CFA exam preparation requires a structured approach to curriculum learning, revision and practice. Your PSM should fit into that plan without disrupting your core exam preparation.
Step 1: Review the official PSM options
Log in to your CFA Institute account and review the modules available for your exam level. Read the learning objectives before selecting one.
Step 2: Estimate the time required
Allow approximately 10–20 hours for a PSM, while keeping in mind that your actual completion time may vary.
Step 3: Create a realistic study schedule
Plan your curriculum study, practice questions, revision and PSM work around your exam date and other commitments.
Step 4: Complete the practical activities
Work through the module’s learning material, questions, exercises and case studies rather than treating it as a task to finish without understanding.
Step 5: Confirm completion
Follow the official instructions to submit or finish the module. Check that your completion is recorded in your candidate account before the results-release deadline.
For additional preparation resources, visit the CFA Institute Candidate Resources page.
7. How FinOptions Supports CFA Exam Preparation
Understanding the PSM requirement is one part of your CFA journey. Candidates also need a clear approach to studying the curriculum, revising concepts and preparing for their chosen exam level.
FinOptions offers CFA coaching in Indore, with online and offline learning options depending on batch availability. Candidates can enquire about the current batch schedule, teaching methodology, available study resources, mock tests and doubt-solving support before enrolling.
When evaluating a CFA preparation program, consider whether the learning approach suits your current level, schedule and preparation needs.
What should you look for in CFA coaching?
- Conceptual clarity: A learning approach that helps you understand CFA curriculum topics.
- Structured preparation: A study plan aligned with your exam level and target date.
- Practice and revision: Opportunities to assess your understanding and identify areas for improvement.
- Doubt-solving support: A way to clarify difficult concepts during preparation.
- Practical context: Relevant examples that help connect CFA concepts with finance applications.
FinOptions can help you explore CFA preparation options based on your requirements and the batches currently available.
Explore CFA coaching in Indore: https://finoptions.co/cfa-coaching-in-indore/
FinOptions is an independent CFA preparation provider, not CFA Institute. Its coaching is separate from the official CFA curriculum, Learning Ecosystem and Practical Skills Modules. Candidates must complete the required PSM through the official CFA Institute platform.
Frequently Asked Questions About CFA Practical Skills Modules
1. What are CFA Practical Skills Modules?
CFA Practical Skills Modules are applied learning modules designed to help candidates develop practical skills alongside the CFA curriculum. They include activities such as videos, questions, guided practice and case studies.
2. Are CFA Practical Skills Modules compulsory?
Yes. Candidates must complete at least one eligible PSM at each exam level to receive their results. The module must be completed by the applicable results-release deadline.
3. How long does a CFA PSM take to complete?
CFA Institute generally estimates 10–20 hours per PSM. The actual time depends on the module and your pace of learning.
4. What is the difference between Python and Financial Modeling in CFA PSMs?
Financial Modeling focuses on building a three-statement financial model using Excel. Python Programming Fundamentals introduces programming concepts and their use in finance-related data analysis.
5. Which CFA PSM should I choose for Level I?
For the 2026 and 2027 curriculum listings, Financial Modeling and Python Programming Fundamentals are available at Level I. Review their learning objectives and choose based on your interests and learning goals.
6. Is Python compulsory for the CFA Program?
Python is not a general prerequisite for enrolling in the CFA Program. However, candidates must complete an eligible PSM at each level, and Python is one of the available module options at certain levels.
7. Can I complete both CFA Python and Financial Modeling PSMs?
Candidates may complete multiple modules when available. However, completing more than one module is not generally required to satisfy the PSM requirement for a single level. Check the official rules for your exam year.
8. Can I use the same PSM for CFA Level I and Level II?
No. The same PSM cannot be used to satisfy the requirement at multiple exam levels. You must complete a different eligible module as you progress.
9. Does FinOptions provide official CFA PSM completion?
FinOptions provides CFA coaching and preparation support. The official PSM requirement must be completed through the CFA Institute platform; coaching from an independent provider does not replace it.
10. Where can I get CFA coaching in Indore?
You can explore CFA coaching at FinOptions in Indore, with online and offline options depending on batch availability. Visit FinOptions CFA Coaching to learn more and enquire about current batches.
Conclusion
CFA Practical Skills Modules are an important part of the CFA candidate journey because they complement curriculum learning with practical applications.
Financial Modeling and Python Programming Fundamentals offer different learning experiences. Financial Modeling focuses on building structured company financial models, while Python introduces programming techniques for finance-related data analysis. The right choice depends on your interests, your current exam level and the modules available for your curriculum year.
If you are preparing for CFA Level I, Level II or Level III and looking for guidance with your exam preparation, explore CFA coaching at FinOptions in Indore.
Start your CFA preparation: https://finoptions.co/cfa-coaching-in-indore/