BambooHR + Go Fig
Connect BambooHR to Go Fig for workforce analytics and people cost insights.
BambooHR holds the employee roster, compensation history, and org structure that finance needs to plan headcount, allocate fully-loaded labor cost by department, and forecast people expense with any accuracy. Go Fig pulls the BambooHR directory, comp records, benefits, custom fields, and termination history into the Financial Intelligence Graph, where Celeste joins it to GL payroll lines, project time in Jira or GitHub, and CRM attainment to produce a real cost-of-salesperson, cost-of-engineer, or cost-of-support-rep number, not a spreadsheet estimate that goes stale the day after board prep.
Key facts
- Auth
- API key scoped to BambooHR subdomain
- Grain
- Employee record plus compensation history rows
- Custom fields
- All custom tables and fields exposed
- Historical backfill
- Full employment history including terminations
- Sync cadence
- Hourly incremental, on-demand for comp changes
What you can do with BambooHR data in Go Fig
Fully-loaded labor cost by department
Allocate salary, benefits, bonus, and employer taxes to the right GL account and department so contribution margin by team reflects real cost.
Headcount planning with live data
Feed the current roster, open reqs, and comp bands directly into a rolling-forecast model so the plan updates automatically when someone is hired, promoted, or leaves.
Turnover and attrition economics
Calculate replacement cost, productivity ramp, and segment-level attrition impact using termination dates, tenure, and role data from BambooHR joined to CRM attainment.
Data available from BambooHR
Go Fig extracts and normalizes the following data from your BambooHR account:
How to connect BambooHR
Create a Go Fig service user in BambooHR
In BambooHR, Settings, Access Levels, create a dedicated service user with a restricted access level that allows reading the fields you want exposed. Exclude SSN, bank account numbers, and any sensitive document fields unless your reporting explicitly requires them. This is the permission model Go Fig will inherit.
Generate an API key tied to that user
From the service user's profile, click API Keys, Add a New Key. Copy the key and paste it into Go Fig along with your BambooHR subdomain (for example, yourcompany.bamboohr.com). The key is tied to that user, so revoking it is a one-click operation if something changes.
Map departments and locations to your chart of accounts
Go Fig pulls your BambooHR department and location structure as dimensions on every employee record. Map these to the cost-center or location dimension in your GL (QuickBooks Classes, NetSuite Departments, Xero Tracking Categories) so labor cost allocations line up on both sides of the join.
Schedule sync and lock down sensitive fields
Default sync is hourly, which is well under BambooHR's rate limits. If comp changes are the primary trigger for replanning, set an on-demand webhook so Go Fig refreshes immediately when a record is updated. Final step is to verify in the Go Fig connector dashboard that the fields exposed match what your compensation committee is comfortable with.
Authentication: API key authentication tied to a specific BambooHR service user. The key is scoped to your subdomain and inherits that user's permission profile, so sensitive fields (SSN, bank account) can be hidden at the BambooHR permission layer rather than filtered in Go Fig. Key rotation is supported and recommended annually.
Common Questions About BambooHR Integration
How does Go Fig keep sensitive employee data like comp and SSN safe?
Go Fig inherits the BambooHR permission profile of the service user you authenticate as. Fields you exclude from that user's access level (typically SSN, bank account, sensitive documents) are never visible to Go Fig. On the Go Fig side, role-based access control further restricts which users in your org can query salary, bonus, or individual-level comp data. The default configuration lets analysts see aggregated comp by department without seeing individual records.
Are BambooHR custom tables and custom fields supported?
Yes. Custom tables (employment history, job information, compensation custom tables) and custom fields on the employee record are pulled as first-class tables in Go Fig. Companies commonly use these to track role-level data, certifications, or cost-center overrides that the standard BambooHR schema does not cover. Celeste can query them directly without any mapping work.
How is compensation history represented?
Each comp change is a row, with effective date, pay rate, pay frequency, pay type (salary, hourly, commission), and the field that changed (base, bonus, equity). This lets finance produce a point-in-time comp snapshot for any date in the past and audit the comp history per employee, which is how fully-loaded labor cost retroactive to a given period should be computed.
Can I allocate labor cost to projects or GL accounts?
Yes, joined with other sources. BambooHR does not natively track time against projects, so allocation is done by joining the employee department or custom field to GL lines, or by joining to a time-tracking system (Jira, GitHub, Harvest) inside Go Fig. Celeste can help build the allocation logic and produce the allocation journal for posting back to your GL.
What about multi-entity or multi-country BambooHR setups?
BambooHR is single-tenant per subdomain, so multi-entity companies typically have one BambooHR per legal entity or one shared BambooHR with location-based dimensions. Both patterns are supported: connect each BambooHR subdomain as its own source and use the location dimension to aggregate, or connect one instance and rely on the department and location dimensions for entity-level rollups.
Ready to connect BambooHR?
See how your BambooHR data looks in Go Fig with a personalized demo.
Book a Demo