# How a company goes public with an IPO

> A process map exported from forks.world (https://forks.world). Author: Brian. Source: https://forks.world/p/cmv21ntm80025l2064owvw1on
> It describes who does what, in what order, and with which technology. Read the plain-language sections first; the JSON at the end is the exact, complete data.

## Summary

- 11 steps across 1 layer
- Persona: The company, Investment banks, The SEC regulator, Investors
- Technology / systems: Stock exchange

## Pain points

Where this process hurts, worst first:

- **Trading opens and the price finds its level** (How a company goes public with an IPO; painful): First day price pops can mean the company left money on the table

## How to read this file

- A process is made of **layers**. The main layer is the top level; any step of kind `subprocess` opens a detail layer with its own lanes and steps.
- **Lanes** are either persona (people/roles) or technology (systems). Each step belongs to one lane; `using` lists tools a person uses for that step.
- Step kinds: `start`, `task`, `decision` (its arrows carry the answer as a label), `subprocess`, `end`.

## How a company goes public with an IPO

Lanes:
- The company: person / role (id `co`)
- Investment banks: person / role (id `bank`)
- The SEC regulator: person / role (id `sec`)
- Investors: person / role (id `inv`)
- Stock exchange: technology / system (id `exch`)

Steps, in the order they run:

1. **Decide to go public and hire banks** [start; The company; id `p1`]
   - then Audit and prepare the books
2. **Audit and prepare the books** [task; Investment banks; id `p2`]
   - then File a detailed public document with the regulator
3. **File a detailed public document with the regulator** [task; The company; id `p3`]
   - then Review and ask questions
4. **Review and ask questions** [task; The SEC regulator; id `p4`]
   - then Is the filing complete and honest?
5. **Is the filing complete and honest?** [decision; The SEC regulator; id `p5`]
   - if "Yes" go to Roadshow: pitch the stock to big investors; if "No" go to Fix and refile
6. **Roadshow: pitch the stock to big investors** [task; Investment banks; id `p6`]
   - then Say how many shares they would buy at what price
7. **Say how many shares they would buy at what price** [task; Investors; id `p7`]
   - then Set the price the night before
8. **Set the price the night before** [task; Investment banks; id `p8`]
   - then Trading opens and the price finds its level
9. **Trading opens and the price finds its level** [task; Stock exchange; id `p9`] ⚠ PAIN POINT (painful): First day price pops can mean the company left money on the table
   - then Now reports to the public every quarter
10. **Now reports to the public every quarter** [subprocess; The company; id `p10`], links to the published process "What happens when you buy a stock" (https://forks.world/p/cmv21nt4d0020l206h8e0gqm2; full text at https://forks.world/api/public/cmv21nt4d0020l206h8e0gqm2/export)
   - (no next step recorded)
11. **Fix and refile** [task; The company; id `p3a`]
   - then Review and ask questions

```mermaid
flowchart LR
  subgraph l_co["The company"]
    n_p1(["Decide to go public and hire banks"])
    n_p3["File a detailed public document with the regulator"]
    n_p3a["Fix and refile"]
    n_p10[["Now reports to the public every quarter"]]
  end
  subgraph l_bank["Investment banks"]
    n_p2["Audit and prepare the books"]
    n_p6["Roadshow: pitch the stock to big investors"]
    n_p8["Set the price the night before"]
  end
  subgraph l_sec["The SEC regulator"]
    n_p4["Review and ask questions"]
    n_p5{"Is the filing complete and honest?"}
  end
  subgraph l_inv["Investors"]
    n_p7["Say how many shares they would buy at what price"]
  end
  subgraph l_exch["Stock exchange"]
    n_p9["Trading opens and the price finds its level"]
  end
  n_p1 --> n_p2
  n_p2 --> n_p3
  n_p3 --> n_p4
  n_p4 --> n_p5
  n_p5 -->|"Yes"| n_p6
  n_p5 -->|"No"| n_p3a
  n_p3a --> n_p4
  n_p6 --> n_p7
  n_p7 --> n_p8
  n_p8 --> n_p9
  n_p9 --> n_p10
```

## Full data (JSON)

```json
{
  "title": "How a company goes public with an IPO",
  "maps": {
    "m_root": {
      "id": "m_root",
      "lanes": [
        {
          "id": "co",
          "name": "The company",
          "type": "person"
        },
        {
          "id": "bank",
          "name": "Investment banks",
          "type": "person"
        },
        {
          "id": "sec",
          "name": "The SEC regulator",
          "type": "person"
        },
        {
          "id": "inv",
          "name": "Investors",
          "type": "person"
        },
        {
          "id": "exch",
          "name": "Stock exchange",
          "type": "system"
        }
      ],
      "steps": [
        {
          "id": "p1",
          "kind": "start",
          "lane": "co",
          "next": [
            {
              "to": "p2"
            }
          ],
          "uses": [],
          "label": "Decide to go public and hire banks"
        },
        {
          "id": "p2",
          "kind": "task",
          "lane": "bank",
          "next": [
            {
              "to": "p3"
            }
          ],
          "uses": [],
          "label": "Audit and prepare the books"
        },
        {
          "id": "p3",
          "kind": "task",
          "lane": "co",
          "next": [
            {
              "to": "p4"
            }
          ],
          "uses": [],
          "label": "File a detailed public document with the regulator"
        },
        {
          "id": "p4",
          "kind": "task",
          "lane": "sec",
          "next": [
            {
              "to": "p5"
            }
          ],
          "uses": [],
          "label": "Review and ask questions"
        },
        {
          "id": "p5",
          "kind": "decision",
          "lane": "sec",
          "next": [
            {
              "to": "p6",
              "label": "Yes"
            },
            {
              "to": "p3a",
              "label": "No"
            }
          ],
          "uses": [],
          "label": "Is the filing complete and honest?"
        },
        {
          "id": "p3a",
          "kind": "task",
          "lane": "co",
          "next": [
            {
              "to": "p4"
            }
          ],
          "uses": [],
          "label": "Fix and refile"
        },
        {
          "id": "p6",
          "kind": "task",
          "lane": "bank",
          "next": [
            {
              "to": "p7"
            }
          ],
          "uses": [],
          "label": "Roadshow: pitch the stock to big investors"
        },
        {
          "id": "p7",
          "kind": "task",
          "lane": "inv",
          "next": [
            {
              "to": "p8"
            }
          ],
          "uses": [],
          "label": "Say how many shares they would buy at what price"
        },
        {
          "id": "p8",
          "kind": "task",
          "lane": "bank",
          "next": [
            {
              "to": "p9"
            }
          ],
          "uses": [],
          "label": "Set the price the night before"
        },
        {
          "id": "p9",
          "kind": "task",
          "lane": "exch",
          "next": [
            {
              "to": "p10"
            }
          ],
          "pain": {
            "note": "First day price pops can mean the company left money on the table",
            "level": 2
          },
          "uses": [],
          "label": "Trading opens and the price finds its level"
        },
        {
          "id": "p10",
          "kind": "subprocess",
          "lane": "co",
          "link": {
            "id": "cmv21nt4d0020l206h8e0gqm2",
            "scope": "public",
            "title": "What happens when you buy a stock"
          },
          "next": [],
          "uses": [],
          "label": "Now reports to the public every quarter"
        }
      ],
      "title": "How a company goes public with an IPO",
      "parent": null
    }
  }
}
```
