Make an org chart from a spreadsheet
If you have a list of people and who they report to, you have an org chart — it just hasn't been drawn yet. This is exactly what the file needs, and what we'll fix for you when it isn't perfect. No file yet? Start from one of the example structures.
Four steps
Export your people to a spreadsheet
Any CSV or Excel file with one row per person. Two columns are enough: who they are, and who they report to.
Drop the file in
Open orgchart.live, start a chart, and choose Import. The file is read in your browser.
Check what was decided for you
Every guess — a healed manager name, a merged duplicate — is listed before anything is applied.
Get your chart
The layout runs automatically. Move people by dragging, then export to PNG, PDF, SVG or PowerPoint.
The columns we read
Only the first two matter. Headers are matched loosely, so capitals, spaces and underscores make no difference — Reports To, reports_to and reportsto are the same column.
| Column | Needed | Header names we accept | What it does |
|---|---|---|---|
| Name | Required | namefullnameemployeeemployeenamepersonstaffnamewhodisplaynameworker | The person. "Last, First" is understood and turned round. |
| Manager | Required | managermanagernamereportstosupervisorleadbossreportingtomanagerfullnamelinemanagerdirectmanagerreporttomanages | The manager's name, as written elsewhere in the Name column. |
| Job title | Optional | titlejobtitlerolepositionjobdesignation | Shown under the name on every card. |
| Department | Optional | departmentdeptteamfunctiongroupdivisionorgunitbusinessunitarea | Gets a colour, and groups people in the side panel. |
| Optional | emailemailaddressmailworkemaile-mail | Used to match people exactly when two share a name. | |
| Manager ID | Optional | manageridsupervisoridreportstoidmanagersemployeeidmanageremployeeid | Matched against the ID column. More reliable than a name. |
| Dotted line | Optional | dottedlinedottedlinemanagersecondarymanageralsoreportstodottedmatrixmanager | A second, non-reporting line drawn as a dashed curve. |
| Employment type | Optional | typeemploymenttypestatusemploymentworkertypeemployeetypecontract | Employee, contractor, intern, or open. Open roles draw as vacancies. |
| Assistant | Optional | staffisstaffassistantsupportstaff | Yes puts the person beside their manager instead of below. |
| Level | Optional | levelgradebandseniority | Grade or band. Carried through, not drawn. |
| Employee ID | Optional | employeeididempidpersonidworkeridemployeenumber | Lets managers be matched by ID rather than by name. |
No header row at all? The first four columns are read as name, title, department and manager, and you're told that's what happened.
What we fix without asking
Real exports are messy. These are handled automatically, and every one is written down and shown to you before it is applied.
Names written backwards
OKAFOR, Danielbecomes Daniel Okafor. Suffixes like Jr and PhD are left where they belong.Half a manager's name
A manager written as just
Whitcombematches Marcus Whitcombe, as long as only one person has that surname.Misspelled managers
Priya Ramenmatches Priya Raman. Close matches are reported with how confident we are, and a near-tie is never guessed.The same person twice
Duplicate rows with the same name, title and department are merged into one card.
SHOUTING
Words in full capitals are put back into normal case, while short ones like MD, II and TBD are left alone.
Managers who aren't listed
Someone whose manager isn't in the file becomes a top-level person rather than being dropped.
Nothing to install, nothing to pay
Building the chart is free, at any size. You only pay when you want a clean file out of it. Excel files work the same way as CSV — the first sheet is used.