The Data agent in ChatGPT Work is useful only when the question, metric grain and permission boundary are explicit. OpenAI says the product connects approved sources such as Redshift, Datadog, BigQuery, ClickHouse, Databricks, MongoDB and Snowflake, plus files from Google Drive and SharePoint. It can use semantic layers and trusted definitions, build dashboards, and share findings through Slack or email or carry out approved connected actions.
Worked example: diagnose a paid-campaign efficiency change
Suppose a team wants to know why qualified-lead cost rose last week. Give the agent a bounded question instead of “analyse our marketing.”
Question: Explain the change in qualified-lead cost for paid search last week.
Grain: one row per campaign per calendar day, timezone Asia/Kolkata.
Inputs: spend, impressions, clicks, leads, qualified_leads, revenue,
campaign_id, channel, landing_page, date, currency.
Compare: the preceding seven complete calendar days.
Return: a metric table, drivers, missing data, alternative explanations,
source tables, query time, and checks that a human must complete.
Do not recommend a budget change until the checks pass.
Validate the answer before interpreting it
- Grain: check that each campaign-day key is unique and that spend and clicks have not been duplicated by a join.
- Completeness: compare row counts, spend totals and lead totals with the approved reporting baseline. Mark a late CRM load as missing, not as a zero.
- Time and currency: confirm the timezone, date boundary and currency conversion before comparing seven-day periods.
- Attribution: confirm the lead qualification rule, lookback window and CRM status. A platform lead is not automatically a qualified lead or revenue event.
- Segmentation: separate campaign, device, search term, landing page and geography before treating a blended average as a driver.
Ask the agent to show evidence for each finding. A useful response might say: “Qualified-lead cost rose from ₹1,200 to ₹1,500, but the CRM feed is missing two days for campaign B; the apparent campaign-B driver is therefore unconfirmed.” That is a decision-ready caveat, not a polished but unsupported explanation.
Turn analysis into a controlled decision
Do not let an agent send a budget-change email or edit a campaign from the first analysis. First, have the analyst validate the grain, joins, attribution and missingness. Then document the action payload: campaign, change, amount, start time, stop condition and approver. The Data agent’s connected-action feature is an approval surface, not permission to skip the organization’s media-change process.
What OpenAI actually promises
OpenAI says administrators choose which connections and roles are available, and queries enforce the connected account’s table, row and column permissions. It also lists dashboard destinations including Omni, Oracle BI, Power BI, Sigma, Tableau and ThoughtSpot. These are product capabilities and partner connections; they do not prove that a particular workspace has every connector, that the source is fresh, or that the answer is correct.
A useful adoption test
Use one read-only campaign question with a known answer. Compare the agent’s metric table with the existing report, record any join or definition correction, and repeat the question after the semantic layer is updated. Only after the result reconciles should the team consider an approved share or action. OpenAI’s announcement does not provide an independent benchmark, so measure accuracy and review time in the team’s own data boundary.
Save a metric contract with each answer
A useful Data-agent result is reproducible by another analyst. Store the following fields beside the answer rather than relying on a dashboard screenshot.
| Field | Example decision | Why it prevents a false driver |
|---|---|---|
| Grain and keys | Campaign × calendar day; campaign_id and date unique | Prevents duplicated spend or leads after a join |
| Time and currency | Asia/Kolkata; INR; seven complete days | Prevents partial-day and conversion errors |
| Qualification rule | CRM status = sales-qualified; named lookback window | Prevents platform leads being treated as qualified outcomes |
| Completeness | CRM load complete through the comparison date | Turns a late feed into missingness instead of an artificial zero |
| Evidence path | Source tables, query time, semantic definition and analyst | Allows the result to be checked after the data changes |
Failure modes before a recommendation
- Join multiplication: compare campaign-day row counts before and after every join; if keys are not unique, stop the interpretation.
- Late CRM load: label the affected dates missing and rerun after the feed completes. Do not ask the agent to interpolate a qualified-lead result.
- Permission mismatch: a missing table or row can look like a business decline. Confirm that the connected role is allowed to see the needed rows and columns.
- Definition drift: if “qualified lead” or revenue changed, report the definition change before comparing periods.
- Dashboard disagreement: reconcile filters, timezone, currency and attribution window before choosing which number is right.
Turn a finding into an approval payload
Only after the metric contract reconciles should a team consider an action. Ask the agent to produce a payload like this for a human approver:
Campaign: search-brand-01
Proposed change: hold budget at current level
Evidence: qualified-lead cost, seven complete days, CRM status = SQL
Uncertainty: two days of campaign-B CRM data are late
Stop condition: no change until the feed is complete and rerun
Approver: named paid-media owner
OpenAI describes approved connected actions through Slack or email, but an action surface is not a media-change policy. DMT’s measurement-stack guide owns attribution and incrementality context; the agent-harness guide covers state and evaluation controls. Link to those pages when the reader needs the adjacent method.
FAQ: questions readers ask
- Can the Data agent change a campaign automatically?
- OpenAI describes approved connected actions, but the article’s workflow keeps a human approver and stop condition between analysis and a media change.
- Why does a semantic layer matter?
- It gives the agent governed definitions for metrics and dimensions; it does not make a stale source or an incorrect join reliable.
- Is a platform lead the same as a qualified lead?
- No. Confirm the CRM qualification rule, status and attribution window before interpreting the result.
Source note: Connector, permission, semantic-layer and action claims come from OpenAI’s September 10 announcement. The campaign example and checks are an original illustrative method; no private workspace or account was accessed.
Sources: OpenAI: Data agent in ChatGPT Work