• 3 tables
  • 10,100 rows
  • 7 formats
  • synthetic data

Call Center Dataset for Data Analysis and Reporting

This ready-made synthetic call center dataset is designed for data analysts practicing SQL queries and Power BI dashboards. Explore 5,000 call records with associated agent and customer information. A free sample is available, with full download access costing credits.

  • last updated 3 Oct 2026
  • by GoMask
  • Contains 5,000 call records.
  • Includes 100 agent records.
  • Features 5,000 customer records.
  • Data spans from 2015-01-01 to 2024-12-31.
  • Available in CSV, Excel, SQL, and other formats.

At a glance

  • 3tables
  • 10,100rows
  • 25columns
  • Jan 2015 – Dec 2024date range

The 3 tables

preview and data dictionary per table

Agents agents · dimension table · 100 rows

Information about support agents.

Preview

First 10 of 100 rows of the Agents table
agent_iduuidfirst_namestringlast_namestringemailstringhire_datedateteamstringshift_start_timestringshift_end_timestring
0ea2b9c5-e48f-4bb4-aa41-e2697e265b16RoryTate[email protected]2023-09-18Delta10:0019:00
2eb8c869-f111-4678-90ec-a81d3be6473fQuincyLowe[email protected]2022-02-08Beta10:0019:00
b8b85212-1279-4224-b484-a6db72814292DevonPearson[email protected]2023-10-26Delta10:0019:00
585de48f-14cb-431e-904b-ed30fe5f2ef7KeikoTakahashi[email protected]2021-07-01Beta10:0019:00
ea2b2136-bfea-4b74-9829-f000d2bd4058SashaFletcher[email protected]2018-01-04Beta10:0019:00
05a1fcfc-8e44-4dff-a808-d3f880c1b663MiloAvery[email protected]2023-09-06Delta10:0019:00
77aa35d0-1cc4-4814-99e0-b6e689ab6a1aWillowNguyen[email protected]2019-07-01Beta10:0019:00
732670e0-797e-4b23-b474-15057eb1a4b2KaiEvans[email protected]2018-07-24Beta10:0019:00
c16dd2c0-f21a-46ad-b218-923c435255e8RemyOrtega[email protected]2023-02-08Delta10:0019:00
34d43975-3a91-4b0d-8284-bb9d06875a61IndraVance[email protected]2019-09-26Beta10:0019:00
10 of 100 rows · 8 columns

Data dictionary

Data dictionary for the Agents table
columntypedescriptionexamplenull %
agent_iduuidPrimary key uniquely identifying each support agent.unique0ea2b9c5-e48f-4bb4-aa41-e2697e265b160%
first_namestringFirst name of the support agent.uniqueRory0%
last_namestringLast name of the support agent.Tate0%
emailstringCorporate email address for the support agent.unique[email protected]0%
hire_datedateDate the support agent was hired.2023-09-180%
teamstringAssigned support team name.Delta0%
shift_start_timestringStandard shift start time (HH:MM).10:000%
shift_end_timestringStandard shift end time (HH:MM).19:000%

Customers customers · dimension table · 5,000 rows

Details about the customers interacting with the call center.

Preview

First 10 of 5,000 rows of the Customers table
customer_iduuidfirst_namestringlast_namestringemailstringphone_numberstringcitystringstatestringaccount_creation_datedate
45d166ba-3008-4338-93d6-a663eaa80e6eArthurSmith[email protected]214-202-3380ChicagoIL2016-03-09
a74777e3-e588-4540-b82b-994e23009b9bEleanorStewart[email protected]462-874-2021New YorkNY2019-10-07
157cba94-6502-4a52-86a0-bce205b84579WalterSimpson[email protected]861-073-4467Los AngelesCA2017-12-10
68fbbf5e-0bb0-49e3-bdd7-faee5cfefa6fMildredSullivan[email protected]310-788-2518HoustonTX2022-08-10
d64f4c55-2f9d-48cc-8e68-16f8dd5dd216ClarenceStone[email protected]834-891-4470PhoenixAZ2018-01-19
d6782643-b84e-4a6a-8151-d1cf9a6691e1GladysSpencer[email protected]369-586-9743ChicagoIL2022-04-22
d9b62ab5-fcbd-4f11-9bc6-218a6dbf9136HaroldSterling[email protected]757-915-3035New YorkNY2021-12-18
b9cda48c-f19d-4a31-9336-574b4a15f3c0MarionScott[email protected]590-279-4568Los AngelesCA2019-02-24
bf453717-83ff-4e71-986a-c4c8b1f3d0afRaymondSimmons[email protected]855-681-8696HoustonTX2015-07-05
97d850b0-b434-4937-be47-3c4c93900f43BeatriceStevens[email protected]469-336-8995PhoenixAZ2023-09-22
10 of 5,000 rows · 8 columns

Data dictionary

Data dictionary for the Customers table
columntypedescriptionexamplenull %
customer_iduuidUnique identifier for each customer record.unique45d166ba-3008-4338-93d6-a663eaa80e6e0%
first_namestringGiven name of the customer.Arthur0%
last_namestringSurname of the customer.Smith0%
emailstringContact email address of the customer.unique[email protected]0%
phone_numberstringStandardized North American 10-digit phone number.unique214-202-33800%
citystringUS city where the customer resides.Chicago0%
statestringUS state abbreviation of the customer.IL0%
account_creation_datedateDate the customer account was established between 2015 and 2023.2016-03-090%

Calls calls · table · 5,000 rows

Records of individual call interactions.

Preview

First 10 of 5,000 rows of the Calls table
call_iduuidcall_start_timedatetimecall_end_timedatetimeduration_secondsintegercall_typestringcall_outcomestringsentiment_scoredecimalagent_iduuidcustomer_iduuid
88da76bf-78d5-4cd2-93db-1f94d1c314ee2023-07-13 09:51:422023-07-13 10:00:54552InboundResolved19ff28b91-31d9-485f-a2ab-5e0b43cf9d6ea4fa24a6-87d5-4768-9a22-42d3d55c60c9
6f705d62-7b6b-4881-b703-b65d740b54582024-01-09 09:01:252024-01-09 09:06:52327InboundResolved-0.069538166d-c3e5-4b01-990a-be4e5dfcf2021ba20052-2c9f-4f5d-a7c6-7e0ba6a69493
58593e76-56c0-415a-9607-1ad13ff201a02023-02-15 09:04:342023-02-15 09:06:1197InboundResolved0.43ac5329d-05c1-49a1-945a-ba8aa1aa22ac368aac45-1ee2-4266-8d08-205fe6e5b950
e7fc3e00-4db6-455e-8f67-76d9917c6f502023-12-06 10:32:072023-12-06 10:39:06419InboundResolved-0.38149c7502-dedf-4f6d-a29e-17ace2736033b4bb0976-5e3e-4bb7-8cff-659c0ccbdd87
e8e44f21-2018-4411-acd9-97e5bf77161f2024-11-29 14:39:582024-11-29 14:43:51233InboundResolved0.6951558957-4d0a-4142-a6fc-bbcd51fbb182bbc9b903-3b74-417f-b05e-71e60f919a68
2b62e880-bde0-4eaa-8153-cdeba3309ced2023-08-23 12:47:142023-08-23 12:50:25191InboundResolved-0.2277aa35d0-1cc4-4814-99e0-b6e689ab6a1ac942d9f1-c23b-4457-a48d-1d3b0d4dcd37
b89e7154-8206-4b1d-8ba0-42300d5b0a302023-12-06 09:35:412023-12-06 09:39:55254InboundResolved0.4986012c29-f5a8-420d-ae7b-7e7266a327b152d76aaa-d388-4f0c-8d96-5c846e0049c7
02e02ada-e632-42b1-8674-b15bab09b9302024-08-29 09:08:172024-08-29 09:09:3477InboundResolved0.02baf9b7de-28e5-46e2-96fc-cee448f2b394c511d730-45d7-40c8-949c-87dad8276107
4cebe956-0abd-4b6a-b4ec-8b6f0b7cd7ff2024-11-04 10:24:452024-11-04 10:28:39234InboundResolved1a3b9d540-8caf-4514-8d53-58e1ccc8f5c9db6c1cfa-b117-4131-af66-f76215cb5e99
42c4c1af-714b-49b5-8a36-0fdedcb7ab8a2024-04-09 10:20:362024-04-09 10:22:25109InboundResolved0.519960c9a5-eb73-49ab-9e10-761d3572099e14969f5a-a6ba-4573-9324-1edfd67a868b
10 of 5,000 rows · 9 columns

Data dictionary

Data dictionary for the Calls table
columntypedescriptionexamplenull %
call_iduuidUnique identifier for each call interactionunique88da76bf-78d5-4cd2-93db-1f94d1c314ee0%
call_start_timedatetimeTimestamp when the call was initiated2023-07-13 09:51:420%
call_end_timedatetimeTimestamp when the call was terminatedunique2023-07-13 10:00:540%
duration_secondsintegerTotal length of the call in seconds5520%
call_typestringDirection or context of the callInbound0%
call_outcomestringFinal resolution status of the callResolved0%
sentiment_scoredecimalCalculated sentiment score of the interaction ranging from negative to positive10%
agent_iduuidForeign key to agents.agent_id9ff28b91-31d9-485f-a2ab-5e0b43cf9d6e0%
customer_iduuidForeign key to customers.customer_ida4fa24a6-87d5-4768-9a22-42d3d55c60c90%

How the tables join

  • calls.agent_id references agents.agent_idmany to one: each Calls row points to one Agents row
  • calls.customer_id references customers.customer_idmany to one: each Calls row points to one Customers row

Questions to answer with it

  1. Write a SQL query to find the average call duration per agent, filtering for 'Resolved' calls.

    tables: calls, agents

  2. Create a Power BI dashboard showing the distribution of call outcomes by call type.

    tables: calls

  3. Calculate the number of calls handled by each customer, ordered by the most frequent.

    tables: calls, customers

  4. Identify agents with the highest average sentiment score for 'Inbound' calls.

    tables: calls, agents

Starter SQL

run against this data before publishing

Table names match the SQLite file and the SQL script.

Average Call Duration per Agent for Resolved Calls

sql
SELECT AVG(c.duration_seconds) AS average_duration, a.first_name, a.last_name FROM calls c JOIN agents a ON c.agent_id = a.agent_id WHERE c.call_outcome = 'Resolved' GROUP BY a.agent_id, a.first_name, a.last_name ORDER BY average_duration DESC LIMIT 20;

Call Outcome Distribution by Call Type

sql
SELECT call_type, call_outcome, COUNT(*) AS call_count FROM calls GROUP BY call_type, call_outcome ORDER BY call_type, call_count DESC LIMIT 20;

Top Customers by Number of Calls

sql
SELECT COUNT(c.call_id) AS total_calls, cust.first_name, cust.last_name FROM calls c JOIN customers cust ON c.customer_id = cust.customer_id GROUP BY cust.customer_id, cust.first_name, cust.last_name ORDER BY total_calls DESC LIMIT 20;

Top Agents by Average Sentiment for Inbound Calls

sql
SELECT AVG(c.sentiment_score) AS average_sentiment, a.first_name, a.last_name FROM calls c JOIN agents a ON c.agent_id = a.agent_id WHERE c.call_type = 'Inbound' GROUP BY a.agent_id, a.first_name, a.last_name ORDER BY average_sentiment DESC LIMIT 20;

Call Duration Rank by Agent using Window Function

sql
SELECT agent_id, duration_seconds, RANK() OVER (PARTITION BY agent_id ORDER BY duration_seconds DESC) as duration_rank FROM calls LIMIT 20;

Load it with pandas

python
import pandas as pd

# Unzip the CSV download first: one file per table
agents = pd.read_csv("agents.csv")
customers = pd.read_csv("customers.csv")
calls = pd.read_csv("calls.csv")

# Join calls to agents
df = calls.merge(agents, left_on="agent_id", right_on="agent_id", how="left", suffixes=("", "_agents"))
print(df.groupby("team").size().sort_values(ascending=False))

Using it in your tool

Excel
Load each table into a separate sheet. Use Power Query to join tables based on agent_id and customer_id. Create a PivotTable on the 'calls' sheet to analyze call outcomes by call type.
Power BI
Create a star schema with 'calls' as the fact table and 'agents' and 'customers' as dimension tables. Establish relationships: calls.agent_id -> agents.agent_id, calls.customer_id -> customers.customer_id. DAX measures: Total Calls = COUNT(calls[call_id]), Average Duration = AVERAGE(calls[duration_seconds]).
SQL
Load the SQLite or SQL relational download. Use agent_id and customer_id for joining tables. Example join path: calls JOIN agents ON calls.agent_id = agents.agent_id.

Formats available

  • CSV (zip)One CSV file per table, zipped
  • Excel workbookOne worksheet per table
  • SQLite databaseA ready-to-query database file with every table
  • Parquet (zip)One Parquet file per table, zipped
  • SQL scriptCREATE TABLE with primary and foreign keys, then INSERTs
  • CSVA single CSV file
  • JSONA single JSON file

How this data was generated

Synthetic data. Every row was generated: no real people, customers or companies are in this dataset.

Synthetic data generated by GoMask DataFactory from a relational blueprint: keys, links and rules are enforced in code, text columns are filled by a language model. No real people, companies or transactions.

  • Data generated using GoMask DataFactory.
  • Synthetic data mimics call center operations.
  • Checked by an automated quality gate: unique keys, no orphan foreign keys, required columns filled, declared rules and date ranges (realism score 100).

Limitations

  • The dataset is synthetic and does not represent real-world individuals or events.
  • Sentiment scores are generated and may not perfectly reflect human emotion.
  • Distributions and correlations are modelled, not measured from real records.

blueprint · call-center-dataset

Scale this dataset

Same tables. As many rows as you need.

Open the blueprint behind these 3 tables in Data Factory: keep the relationships, change a column, and generate it at the size you need.

  • 200,000 rows
  • 1,000,000 rows
Scale this dataset in Data Factory
Tables
agents, customers, calls
Licence
yours to use, including commercially
API slug
call-center-dataset

What should your data show?

Preview 20 rows free
No signup. No card.