Investor teaser / CIM auto-generator — turn company financials into an investor-ready document in seconds.
Advisors spend 10+ hours per mandate hand-building teasers. TeaserGen produces the standard teaser structure — overview, investment highlights, financial story, the ask — from a single JSON file, and can anonymize it into a blind teaser with one flag.
teasergen company.json -o teaser.md
teasergen company.json --anonymize -o blind_teaser.md- Company Overview — sector, HQ, model, headcount (auto-prose)
- Investment Highlights — bulleted, from your inputs
- Financial Summary — auto-computed CAGR, EBITDA margin, profitability narrative
- Financial Performance table — clean ₹ Crore table
- The Opportunity — transaction type, ask amount, use of proceeds
- Disclaimer — standard confidentiality language
Blind teaser mode (--anonymize): swaps in a code name (e.g. "Project Atlas"), hides the company name and HQ — exactly what you send before an NDA.
{
"name": "Acme Robotics",
"code_name": "Project Atlas",
"sector": "Robotics",
"description": "Builds autonomous warehouse robots.",
"headquarters": "Pune",
"founded_year": 2018,
"employees": 120,
"business_model": "Robotics-as-a-Service (RaaS)",
"transaction_type": "Growth Capital",
"ask_amount_cr": 150,
"highlights": ["50+ enterprise clients", "Patented navigation stack"],
"use_of_proceeds": ["Expand to SE Asia", "R&D"],
"financials": [
{"year": "FY2022", "revenue": 40, "ebitda": 4, "pat": 1},
{"year": "FY2023", "revenue": 70, "ebitda": 10, "pat": 4},
{"year": "FY2024", "revenue": 120,"ebitda": 24, "pat": 12}
]
}from teasergen import CompanyInfo, FinancialYear, generate_teaser, render_markdown
company = CompanyInfo(
name="Acme Robotics", sector="Robotics", ask_amount_cr=150,
code_name="Project Atlas",
financials=[
FinancialYear("FY2023", revenue=70, ebitda=10, pat=4),
FinancialYear("FY2024", revenue=120, ebitda=24, pat=12),
],
highlights=["50+ enterprise clients"],
)
teaser = generate_teaser(company, anonymize=False)
print(render_markdown(teaser))
# Blind teaser for pre-NDA distribution
blind = generate_teaser(company, anonymize=True)| Before | After |
|---|---|
| 10+ hours hand-building each teaser | Seconds |
| Inconsistent structure deal-to-deal | Standardized sections |
| Manual CAGR / margin math | Auto-computed |
| Separate anonymization pass | One --anonymize flag |
© 2026 Bhupendra Gurjar. All rights reserved. Commercial license.