Blog

how-to

How to Build an Org Chart from CSV (Without Visio)

templates

Org Chart Studio Team · Published · 15 min read

The fastest way to build an org chart from a CSV: upload the file to a tool that reads it, map three columns (Name, Title, Manager), let the software draw the hierarchy. Five minutes. No SmartArt, no Visio licence, no retyping names.

Most search results for "org chart from CSV" are Microsoft trying to sell you Visio. The reader didn't ask for that. They have a spreadsheet, usually exported from an HR system, and they need an image of the org by tomorrow morning.

This guide is the actual version: the minimum file format, the five-minute import, the moment when "Sarah C" and "Sarah Chen" turn out to be the same person, and the things that go wrong when the spreadsheet was clean in your head and messy in reality.

Key Takeaways

  • Three columns is the minimum: Name, Title, Manager. The Manager column does all the hierarchy work.
  • Both .csv and .xlsx work directly in Org Chart Studio; multi-sheet Excel workbooks let you pick the right tab.
  • Fuzzy matching catches the "Sarah C / Sarah Chen" trap automatically; you confirm the merge instead of debugging it.
  • HR system exports (BambooHR, Workday, Gusto, Rippling) are usually one column rename away from importable. Visio is overkill for one-time charts.

Why an org chart from CSV beats SmartArt

The data is already in the spreadsheet. SmartArt's response is: type it again, one box at a time. That's the entire problem.

Once you have a CSV with names, titles, and a Manager column, a dedicated tool can read the relationships and draw the chart. You skip the manual layout, the connector lines, and the pixel alignment. Add a person to the spreadsheet later and re-import; the chart updates without you redrawing it.

The only reason to type names into SmartArt is when the chart has to physically live inside a Word doc or PowerPoint deck and you don't want a separate image file. For everything else, board updates, slide decks, onboarding docs, internal wiki, an exported PNG from a chart tool is faster to make and easier to update.


The minimum CSV format for an org chart

Three columns. That's the whole specification.

NameTitleManager
Sarah ChenCEO
Marcus JohnsonVP EngineeringSarah Chen
Priya PatelVP OperationsSarah Chen
David KimSenior DeveloperMarcus Johnson
Ana RodriguezDeveloperMarcus Johnson
James WilsonOperations ManagerPriya Patel

The Manager column is doing all the work. Each person points to exactly one other person who exists in the Name column. The person at the top, usually the CEO or founder, has an empty Manager cell. That's how the tool knows where the tree starts.

A few things worth flagging:

  • Spelling has to match. If a manager's name is spelled "Marcus Johnson" in one row and "Marcus J" in another, those are two different people to most tools. (We'll come back to this, it's the hero section of the article.)
  • One manager per person. Matrix structures with dotted lines aren't supported by most CSV import flows. You import the solid line first; dotted lines come later, in the editor.
  • Extra columns are fine. Department, employee ID, phone number, start date, most tools ignore what they don't need. Don't strip them out.

If your file is a .xlsx instead of .csv, that's also fine, Org Chart Studio reads Excel workbooks directly. Multi-sheet workbooks (one tab per department, say) trigger a sheet picker so you choose which roster to chart.

If you don't have a file yet, download the import template. It's a one-page Excel sheet with the right headers and a few sample rows. Replace the rows with your team and save.


How to make an org chart from CSV or Excel in five minutes

Open orgchartstudio.com/studio. No account needed to start.

1. Click Import in the left command palette

CSV and Excel files import the same way, so a .csv exported from Google Sheets and an .xlsx saved out of Excel both work. The Import option is the first item under the data menu. Drag your file onto the dropzone, or click to browse.

2. Pick the right sheet (Excel only)

If your workbook has more than one sheet, the studio asks which one holds the roster. CSV files skip this step; single-sheet .xlsx files skip it too.

3. Map your columns

A dialog asks which column is which:

  • Which column has names?
  • Which column has managers?
  • Which column has titles?

If your headers are obvious (Name, Title, Manager), the studio guesses correctly and you click through. If your HR export uses Full Name and Reports To, you set the dropdowns once.

4. Review the import preview

Before the chart builds, the studio shows a preview: rows that imported cleanly, rows where the manager doesn't exist in the list (flagged as Needs manager), and possible duplicates (flagged with suggested matches). This is the moment when "Sarah C" and "Sarah Chen" surface together so you can confirm or split, see the next section.

5. Generate the chart

Click Import. The org chart appears with everyone positioned correctly. From there:

  • Drag a card onto another to reparent
  • Double-click to edit names, titles, departments
  • Use the layout presets to switch between dense and roomy spacing
  • Export a watermarked PNG free, or buy a one-time export pass for a clean version (passes start at $1)

The whole process takes about five minutes. Most of that is finding the file on your computer.

Don't have a spreadsheet handy? Open a blank chart and build it visually →. Drag, drop, double-click to edit. No file required, and you can export the result the same way.


The messy-data trap

Here's the moment most "import org chart from CSV" tutorials gloss over.

You export 47 employees from BambooHR. The CSV looks clean. You upload it.

The tool builds 51 boxes, four extras, because four employees show up in the Manager column under names that don't exist in the Name column. "Sarah C" reports to "Marcus J", but the actual employee records are "Sarah Chen" and "Marcus Johnson". To a strict CSV parser, those are different humans.

Most tools handle this in one of three ways:

  1. Silently fail. The chart builds with the four ghost managers as separate root nodes. Your CEO's tree looks like four orphan trees.
  2. Show a generic error. "Manager Sarah C not found in employee list. Cannot import." Now you're in Excel, doing find-and-replace, hoping you catch every variant.
  3. Drop the orphans. Some tools just don't import those rows at all. You finish the chart, present it, and someone notices their boss is missing.

Org Chart Studio does a fourth thing: fuzzy matching with confirmation. The import preview shows "Sarah C" with a suggested match to "Sarah Chen" and a similarity score. You click confirm or split.

Same for "Marcus J" → "Marcus Johnson", "John Smyth" → "Jon Smith", and the other usual suspects. The fuzzy match has a two-character edit distance threshold by default, strict enough that "Mark" and "Mary" aren't merged, loose enough to catch initials and typos.

When you confirm, the row imports as the right person. When you split, the row imports as a separate employee with a "Needs manager" flag, and you fix the spreadsheet on your terms.

Real story: Marcus runs ops at a 60-person agency. He exports the BambooHR roster, runs it through Studio, and the import preview surfaces 11 fuzzy matches, every contractor whose name was entered with an initial in one system and a full name in another.

He confirms 9, splits 2 (one was a real edge case where two people genuinely shared a first name and last initial), and the chart builds in under a minute. The same export had taken him 45 minutes the previous quarter when he was using SmartArt and doing the deduplication by hand.

Ready to test it on your own data? Drop a CSV into the studio →


Where the CSV came from changes everything

Different sources produce different headers. Knowing what to expect saves a column-mapping round trip.

HR system exports

Most HR systems can produce a roster CSV in 30 seconds:

  • BambooHR: Reports → Employee Directory → Export. Gives you First Name, Last Name, Job Title, Supervisor. Combine first/last into a single Name column in Excel before importing, or map both during import.
  • Workday: Reports → Worker Listing → CSV. Headers are verbose (Worker > Preferred Name > Full Name), but the studio's column-mapper handles the long versions.
  • Gusto: People → Reports → Employee List. Clean output, three-column-ish, Employee Name, Job Title, Manager.
  • Rippling: Employees → Export. Outputs Employee, Title, Reports To, the closest of the four to the canonical format.

If your HR system is older or in-house, the export probably exists; it might be hidden in an admin panel rather than the user-facing reports section.

Google Sheets

Open the sheet → File → Download → CSV. Done. Google Sheets is a first-class CSV source, it round-trips cleanly, including non-ASCII characters and emojis in names (Studio handles UTF-8 encoding correctly).

Manually built lists

If you typed the roster yourself in Excel or Sheets, you control the headers. Use Name, Title, Manager and skip the column-mapping step entirely. The import template is set up this way.

Slack, Notion, MS Teams

These don't export rosters as CSV directly. Slack's API lets engineers extract a member list, but for a one-time chart it's faster to retype names from the team directory. Notion databases export to CSV cleanly if you set the database up with the right columns. MS Teams' org chart is buried inside the company directory and is read-only, extracting it requires admin access via the Microsoft Graph API.

For most of those sources, the path of least resistance is: open the directory in one window, type names into the import template in another, save as CSV, import.


Common CSV gotchas

A non-exhaustive list of what tends to go wrong, and how to handle it.

Circular reporting. Sarah reports to Marcus, Marcus reports to Sarah. The tool detects the cycle and flags it before the chart builds, usually with a "Cycle detected: Sarah → Marcus → Sarah" message. Fix the data; one of the two manager fields is wrong.

Multiple top-level people. Two or more rows have a blank Manager cell. If you have co-CEOs, that's correct; the chart shows them side-by-side. If you have one CEO and three accidental orphans, you have data to clean ; the orphans are usually senior people whose manager wasn't included in the export.

Unicode and accented names. "José Núñez", "Łukasz Pająk", "Ödeon Andersson", modern CSV parsers handle UTF-8 fine. The pitfall is older Excel versions that save as Windows-1252 by default. If names look corrupted after import, re-export from Excel using File > Save As > CSV UTF-8.

Quoted fields with commas inside. Job titles like "Director, Customer Success" need the quotes to survive the CSV serialization. Excel handles this automatically; manually edited CSVs sometimes don't. (RFC 4180 is the spec, if you want to debug a stubborn file.) If a chart looks like it has phantom employees with names that are partial titles, this is the cause.

Missing managers. A manager name that doesn't exist in the Name column. The studio flags these as Needs manager and shows you the affected rows. Fix the source data, or assign the orphans to an existing manager during the review step.

Duplicate names, actually different people. Two employees genuinely named "John Smith". Add a disambiguator to the spreadsheet (John Smith (Eng) and John Smith (Sales)) before importing. Fuzzy matching is too eager to merge these otherwise.


Org chart from CSV: tools compared

ToolCSV importPricingWhen it makes sense
Microsoft VisioYes (Wizard)$5–$15 / user / monthYou're already on a Microsoft 365 enterprise plan and IT manages it
LucidchartYes$9 / user / monthYou need real-time collab with a team that already uses Lucid
draw.ioYes (advanced CSV with code config)FreeYou're technical and don't mind the syntax
MiroYes (helper add-on)$8 / user / monthYour team already lives in Miro
Org Chart StudioYes (.csv + .xlsx, fuzzy match)Free + $1 export passesOne chart, no subscription, no install

For a recurring need with a team that already pays for collaboration software, Lucidchart or Miro are reasonable. For a one-time chart (a board update, a recruiting page, an onboarding doc), paying $9/user/month for one PNG is a tax most people skip without realizing it. The pay-per-export model exists for that case.


Frequently asked questions

What CSV format do I need to make an org chart?

Three columns: Name, Title, Manager. The Manager column does all the hierarchy work, it must reference a name that exists in the Name column. The person at the top has an empty Manager cell. Headers are flexible (Full Name, Reports To, etc. all work) because the column-mapping step lets you tell the tool which column is which.

Can I import an Excel file directly, or do I have to export to CSV first?

You can import .xlsx directly. Org Chart Studio reads Excel workbooks the same way it reads CSV, drop the file on the import dropzone. Multi-sheet workbooks trigger a sheet picker so you can choose which tab holds the roster. Saving as CSV first still works and is sometimes useful (it strips formatting and makes the file portable), but it isn't required.

What happens if my CSV has typos or duplicate names?

Most tools either silently fail, throw a generic error, or drop the rows. Org Chart Studio runs fuzzy matching during the import preview, "Sarah C" and "Sarah Chen" surface together with a suggested merge, and you confirm or split. The threshold catches most initial-vs-full-name and common-typo cases without merging genuinely different people.

Why doesn't Microsoft Excel just generate the org chart automatically?

SmartArt is Excel's built-in diagram tool, and it doesn't read spreadsheet data. You type names into the SmartArt directly, one box at a time, in a separate text pane. That's what dedicated CSV import in tools like Org Chart Studio exists to replace. Visio (also Microsoft) does have a Data Visualizer that reads Excel data, but it's a separate paid product.

Do I need to export from my HR system to make this work?

Most HR systems (BambooHR, Workday, Gusto, Rippling) can produce an employee directory as CSV in under a minute, usually under Reports or Exports. The CSV may need a column rename or two before importing, but the structure is close to what an org chart tool expects. If your team isn't on an HR system, a manually built spreadsheet works just as well.

What do I do if multiple people don't have a manager?

Either the chart legitimately has multiple roots (co-CEOs, board-level reporting, distinct subsidiary trees), in which case the tool draws them side-by-side and you proceed; or you have orphans created by a partial export. If the latter, fix the source data, the orphans are usually senior employees whose manager wasn't included in the export filter.

Can I update the chart later when the spreadsheet changes?

Yes. Re-import the updated CSV; the chart re-builds with the new structure. If you've made manual edits in the studio editor (renamed people, moved boxes by hand) those edits are preserved when possible, Studio diffs the new data against the existing chart. For minor changes, edit individuals directly in the editor without re-importing.

What about circular reporting?

The tool detects the cycle ("Sarah → Marcus → Sarah") before the chart builds and surfaces it for you to fix. The chart can't be drawn with a cycle, there's no consistent "top", so the import is paused until the data is corrected. The alternative is silently producing a chart with one of the cycle members duplicated, which is what some tools do. Detection is better.


When the chart is ready

Free PNG exports include a small orgchartstudio.com watermark in the corner. For a clean version, a slide, a doc, a recruiting page, buy a one-time export pass. Passes start at $1 and don't expire. No subscription, no per-seat. See pricing →

If you're on the fence: the import is free, the watermarked export is free, and you can see what the chart looks like before paying anything. The pass exists for the moment when you actually need a clean image.

For a roster you'll be updating regularly (quarterly board decks, onboarding docs, an internal wiki page), a free Org Chart Studio account stores your charts, autosaves edits, and lets you re-import an updated CSV any time. Build the chart once; refresh it in a minute when the spreadsheet changes.

The hard part is finding the original CSV. Everything after that is a column dropdown and a click.

Your chart isn't going to draw itself.

Start free. No subscription. Pay once when you need a clean export.

Try Org Chart Studio