Interactive demo
Explore the people connecting a university to its companies
University Desk connects Oxford, Cambridge and TU Delft to founders with recorded education links and the companies they built. Follow a connection to inspect the founder’s education record and company details, or switch to the company list to filter and shortlist.
This is a saved, funding-ranked sample, not a census or a list of university spinouts. Each network starts with up to 100 company candidates and retains founders whose education records contain the exact university UUID. An education link does not establish degree completion.
The app ZIP includes the dashboard, setup instructions and the existing demo snapshots. It runs without credentials; notes and shortlists stay in your browser. The Python download below is a separate API example, not the application, and requires your own API credentials.


The goal
Build a founder network you can audit
A university name is useful for discovery, but it is not enough evidence for a relationship. This workflow starts with a broad company search, then keeps an edge only when the founder's education record points to the resolved university UUID.
python -m venv .venv
source .venv/bin/activate
pip install requests python-dotenv
python map_university_founders.py --university "University of Oxford" --domain ox.ac.uk
Store DEALROOM_CLIENT_ID and DEALROOM_CLIENT_SECRET in a local .env file. Never expose them in browser code.
Resolve the institution before drawing an edge
GET /data/search can return institutions with similar names. The script requires both an exact name and website domain, then fetches GET /data/entities/{id} for the canonical UUID and university metrics.
search = client.get(
"/data/search",
{"q": university_name, "types": "university", "limit": 10},
)
match = next(
item for item in rows(search)
if item["name"] == university_name
and domain(item.get("website_domain")) == website_domain
)
Keep alumni companies and spinouts separate
The university entity reports alumni-founder and spinout totals. These describe different populations.
| Lens | What it measures | How to use it |
|---|---|---|
| Founder alumni | A founder has a verified education record for the university | Map people and the companies they built |
| University spinouts | The university-level aggregate spinout_count | Size the institution's spinout population |
| Company spinout flag | A company is marked as a spinout | Use as context only; it does not name the source institution |
Do not collapse the categories
An Oxford alumnus can found a company years later with no university IP or institutional involvement. The API surface used here does not expose a per-company university-of-origin relationship.
Use the university label to build a candidate pool
GET /data/companies finds startups whose founder education names the university. Funding sort gives the network a useful starting order, while a larger pool leaves room for the verification step.
filter=and(
founder_university_name[eq]:University of Oxford,
has_founder[eq]:true,
is_startup[eq]:true
)
sort=-total_funding
limit=60
currency=USD
The live Oxford run found 5,683 matching companies before verification. The public snapshot shows 12, ordered by reported total funding.
Verify people in batches, then add pedigree
Company rows include founder UUIDs. The script sends those UUIDs to GET /data/founders in batches of 50, avoiding one request per person.
education = next(
item for item in founder.get("education", [])
if item.get("university_uuid") == university["uuid"]
)
if education:
keep_edge(company, founder, education)
The retained founder record adds degree, major, study years, prior employers, and profile links when those fields are available. Missing fields stay null.
Real output
Inspect the Oxford founder network
Every visible connection below passed the university UUID check.
Loading the verified founder network...
Snapshot generated from the Dealroom API. Re-run the script for current data.
Treat the map as research evidence
- Education and career records can be incomplete, so absence is not evidence that a relationship does not exist.
- The university-name company filter is a discovery step. Verify the founder education UUID before retaining an edge.
- Funding totals, founder roles, and education records can update at different times.
- A company-level spinout flag does not identify the institution behind that spinout.
- Use the network to form research questions, not to judge founder quality or predict company outcomes.
Complete example
Download the founder network workflow
The script includes OAuth2 authentication, retries, exact institution matching, batched founder retrieval, UUID verification, Markdown output, and optional JSON output.
Download Python