Audiences
Unify your CRM, data warehouse, and enrichment data into one persistent profile per contact and account.

Clay Audiences is the unified data layer for your workspace. It combines your CRM, data warehouse, and third-party enrichments into one persistent profile per contact and account, updated in real time.
Use it to build dynamic segments across millions of records, run automated enrichment and signal workflows at scale, and sync results back to your CRM without managing dozens of separate tables.
- Available on all paid plans at no additional charge — you only pay for the credits and actions you use.
- Growth: sync up to 250,000 CRM/data warehouse records with a daily refresh.
- Launch: import from Clay's people and companies database and CSV only.
- Enterprise: sync up to 25 million CRM/data warehouse records with a 15-minute refresh.
- Field limits: fields are budgeted in four independent buckets — text (which also covers email and URL), number, date, and checkbox — with People and Companies each getting their own budget. Roughly 70 fields of each type on non-Enterprise plans and 135 of each on Enterprise. Filling one bucket doesn't consume capacity in the others.
Setting up Audiences follows four steps:
- Import your data — connect Salesforce, HubSpot, Snowflake, BigQuery, or Databricks, or import from CSV or Clay's people and companies database.
- Create audiences — build dynamic segments using filters to target the right contacts and accounts.
- Enrich and monitor — run bulk enrichments and signals that write data permanently back to each record.
- Write back to your CRM — sync enriched data and segment membership back to Salesforce.
Navigating Audiences
Audiences has two main views for managing your data and segments.
The Segments page is the home for all your segments. It replaces hunting through the sidebar list.
- Three tabs:
All,Created by me, andDrafts. - Each row shows its record count, with an
Addmenu forSend to workflow,Add to workbook,Sync to ad platforms, andExport to campaign. - Click
New segmentto create one directly from this page. - Click into any audience to open the table view, where
EnrichandSendare available.
Add data from anywhere in Audiences opens the Add data sidebar, where you choose an import source. Connected sources and write-back destinations are configured under Settings (reached from the sidebar footer), which has separate Sources and Destinations tabs.
The Data hub is the control center for the data inside your audiences. A header row shows record, field, enrichment, and signal counts with quick-add shortcuts, above four tabs — Fields, Enrichments, Signals, and Account Agents:
- Fields — a list of all fields with fill-rate indicators. Click any field for a side panel showing its fill rate,
Records covered,Data type, anExport rulessection, and aSegments filtering on this fieldsection. - Enrichments — a central list of every enrichment across your audiences, showing cost vs. budget, run status, and which audiences and fields each enrichment covers. From here you can point a single enrichment at multiple audiences at once.
- Signals — the same layout as Enrichments. Add a signal and assign it to multiple audiences from one place.
Account Agents— the account agents running against your audiences, managed from the same place.
Importing your data
To add a data source, click Add data from any view in Audiences. This opens the Add data sidebar, where Add source lists everything you can import from.
Most sources open a guided wizard that takes the import one step at a time — CSV file, Clay table, Snowflake, Google BigQuery, and Databricks all work this way. Salesforce and HubSpot open their own source settings panel instead.
You can import data from:
- Salesforce
- HubSpot
- Snowflake
- BigQuery
- Databricks
- Gong
- CSV
- Clay tables
- Clay's people and companies database
Importing from Salesforce
Accounts, Contacts, Leads, and Opportunities. Clay lists every import you add in the Salesforce source settings, where you can reopen, rename, or remove any of them.
- Click
Add data→Add Source→ select yourSalesforce integration.- If you don't see a Salesforce integration listed, contact your Growth Strategist.
- Click
Add recordsto open theAdd records from Salesforcewizard. - Choose the object you want to import:
Accounts,Contacts,Leads, orOpportunities. Opportunities build on your other Salesforce data, so import Accounts and Contacts first. - Under
Record selection, choose how much of that object to bring in.All recordsimports every record of the object. Each object takes one all-records import — if it already has one, Clay guides you toward a record subset instead.Record subsetimports only the records a SOQL query returns. Enter aSubset name, then write the query as described in Importing a subset of Salesforce records with SOQL below.
- Click
Continue. Clay saves the import as a draft and opens its settings. - Enable
Import syncto continuously import the matching records into Clay Audiences. Imports run incrementally on your plan's schedule, with a full re-import once a week — see CRM sync cadence below. - (Optional) For an Accounts import, enable
Import activitiesto also import tasks and events associated with those accounts. Activities are available on Accounts imports only.- Tasks and Events are automatically linked to the corresponding account records and appear in each account's detail view.
- Common use cases: track customer touchpoints, identify engaged accounts, filter audiences by recent activity.
- (Optional) Click
Editnext toImport record matchingto combine records from multiple sources. See Configuring import record matching for setup details. - Leave
Export syncandCreate new Salesforce recordsoff for now. - In the field mapping section, map your Audiences fields to the Salesforce fields for this object — Clay Companies fields to Account fields, Clay People fields to Contact and Lead fields.
- Use
Auto-mapto automatically match fields, or configure each mapping manually. - The
Scheduled export rulecolumn controls whether Clay writes each field back to Salesforce. The default isNever write— Clay enriches the field in your Audience but won't push it to Salesforce until you update the rule. - Click
Previewto review your mapping before saving.
- Use
- Click
Save and review, thenConfirmto start the initial import. - Repeat the wizard for each additional object you want in Audiences.
- If the record count hasn't updated yet, the initial import may still be processing — refresh the page after a few minutes.
- Which fields matter varies by object. On Leads,
Lead Status,Lead Source,Title, andCompanyare common; on Opportunities,Stage,Amount,Close Date, andOwner. - Here is how Clay resolves Salesforce Lead records:
- Automatic Lead-to-Contact merging: When a Salesforce Lead is converted into a Contact in Salesforce, Clay automatically merges the Lead and Contact records into a single person record in your Audiences. This happens under the hood and is not user-configurable — data from both the Lead and Contact is combined and preserved.
- Cross-source matching: Lead records are also deduplicated against Contact records from other sources using a professional profile URL and email. See Configuring import record matching for details.
- Duplicates across Salesforce Leads, Contacts, and other sources count as one person in your Audiences.
- Opportunity imports depend on your Accounts and Contacts imports staying enabled.
- One thing about Opportunity data is worth knowing:
- Opportunity data is associated with your Companies records and becomes available as a filter in your Companies audience.
Why the native connection matters: Standard Clay table imports run full API calls on every sync. The Audiences connection uses incremental syncs — only changed records are processed after the initial import — which means far fewer API calls. If your Salesforce admin has raised API limit concerns, this is the fix.
Importing a subset of Salesforce records with SOQL
A record subset imports only the Salesforce records a SOQL query returns, which is useful when you want part of an object rather than all of it — prospect accounts, contacts in one region, open leads from a recent event. Each object can have several subsets, and every subset keeps its own name, query, field mappings, and sync settings.
- In the
Add records from Salesforcewizard, choose the object, selectRecord subset, and enter aSubset name. Naming it for the filter it applies, like "Prospect accounts", makes it easier to recognize in your source settings later. - Write a raw
SELECTquery underWrite your SOQL query. The query has to select from the object you chose in the wizard, and it needs to includeId,SystemModstamp, andIsDeleted.- Click
Generateto describe the records you want in plain language and have Clay draft the query for you. - Select every field you want to map. Field mapping only offers fields the saved query selects, so adding a field later means editing the query.
- For Contacts, include
AccountIdto keep Contact-to-Account associations. For Leads, includeConvertedContactIdso converted Leads merge into their corresponding Contacts.
- Click
- Click
Test. Clay validates the query, previews the matching records, and loads the record count. Confirm the preview holds the records you expect, and resolve any recommended-field warnings. - Click
Continue, then work through the import settings the same way as any other Salesforce import.
Keep saved queries straightforward. Clay runs your query through Salesforce's sync engine, so a SELECT with a clear WHERE condition works best. Saved queries can't use LIMIT, OFFSET, GROUP BY, HAVING, aggregate or function projections, parent-to-child projections, or field aliases.
Editing a query later: open the subset from your Salesforce source settings and click Edit SOQL. Changing the query replaces the existing import and its field mappings with a new one — records supported only by the old import are removed, records supported by another source stay, and records from the new query that share a unique identifier with existing records are merged. Field mappings can be changed on their own at any time, and when you add a mapped field Clay backfills it across the records already imported from that source.
Subsets for Opportunities are on the way; the wizard shows that option as coming soon for now.
Importing from HubSpot
People first, then repeat for Companies, then Deals. Run through the steps once per connected HubSpot account.
- Click
Add data→Add Source→ select yourHubSpot integration.- If you don't see a HubSpot integration listed, contact your Growth Strategist.
- Select
Peopleat the top of the sync panel. - Enable the
Importtoggle. - Add any HubSpot Contact fields you frequently use or want to segment by.
- Name the corresponding Clay fields.
- Select
Companiesat the top and repeat for accounts. - Select
Dealsat the top of the sync panel. - Enable the
Importtoggle. - Add any Deal fields you want to filter or segment by — common fields include
Deal Stage,Amount,Close Date,Deal Owner, andDeal Type.- Deal data is associated with your Companies records and becomes available as a filter in your Companies audience.
- Name the corresponding Clay fields.
- Click
Save and review, thenConfirm.
Connecting more than one HubSpot account. A workspace can hold several HubSpot connections at once, which helps when different business functions run in separate HubSpot accounts. Repeat the steps above for each account — every connection keeps its own source settings and field mappings. The Sources tab in Audiences settings lists every import alongside an Account column naming the HubSpot account it came from, so you can manage each one independently.
Within a single HubSpot account, each record type takes one import — Clay tells you when that record type has already been added for that account. To combine records that represent the same person or company across two HubSpot accounts, configure Import record matching on each import — see Configuring import record matching below.
Note: HubSpot is import-only. Clay imports HubSpot records and enriches them in your Audience, but doesn't write enriched data or segment membership back to HubSpot. Salesforce is the only write-back destination. To get enriched Audience data into HubSpot, see Writing back to other CRMs below.
CRM sync cadence
Salesforce and HubSpot sources re-import on a schedule that depends on your plan.
- Enterprise — every 15 minutes.
- Growth and other paid plans — every 24 hours.
Each scheduled run is incremental, so only the records that are new or changed since the last run are imported. Every source also runs a full re-import once a week, on every plan.
Cadence is set per workspace. If you need CRM data to refresh on a different schedule, contact your Growth Strategist.
Importing from Snowflake
- Click
Add data→Import from Snowflake. - Pick a database → schema → warehouse, then write a SQL query directly. Click
Testto preview results before continuing. - Confirm the preview looks correct, then click
Continue. - Define the
Unique Identifier:- For People:
emailoruser_id. - For Companies:
company_idordomain.
- For People:
- (Optional) Configure a
Timestamp Fieldfor incremental syncing:- With a timestamp: Clay only imports new or changed records. Syncs run every 15 minutes on Enterprise plans, and once every 24 hours on other plans.
- Without a timestamp: Clay compares the full query result to detect changes. This reruns every 12 hours on Enterprise plans, and once every 24 hours on other plans.
- Map your Snowflake columns to Audience fields.
- Review and click
Confirm— Clay begins importing immediately. - Monitor the import. If records don't appear immediately, refresh the page to see the latest count.
Importing from BigQuery
BigQuery is available as a native Audiences import source. The setup follows the same pattern as Snowflake: select your database, schema, and warehouse, then query directly with SQL. Results appear as Audiences data you can map in.
Warehouse sync cadence
Snowflake, BigQuery, and Databricks sources all re-sync on the same schedule. How often depends on your plan and on whether you configured a timestamp field for the source.
- With a timestamp field — every 15 minutes on Enterprise plans, once every 24 hours on other plans. Only new and changed records are imported.
- Without a timestamp field — every 12 hours on Enterprise plans, once every 24 hours on other plans. Clay compares the full query result to detect what changed, which is why it runs less often.
Importing from CSV
A CSV import runs through a two-step wizard: upload the file, then map its columns to your Audience fields.
- Click
Add data→Add source→CSV file. - On
Upload a CSV file, enter aSource name, choose theAudience type—PeopleorCompanies— and upload your file. - Click
Nextto move toField mapping. - Under
Import settings, set theUnique identifier— the column that uniquely identifies each record in your file. Clay reads it to decide whether an incoming row updates an existing record or creates a new one.- On a companies import, a company ID works well here, since it also lets Clay link people to their company record.
- On a people import,
Company associationappears as an optional setting. Point it at the column holding each person's company ID to link them to their company records.
- Map your columns in the table below.
Clay PeopleorClay Companiesholds the Audience field, andCSV columnsthe column it reads from.- Click
Auto-mapto match fields automatically, orAdd mappingto add a row and choose both sides yourself. Nameis required on a people import, andCompany nameon a companies import.
- Click
- Click
Import. Clay checks for optional fields you left unmapped before the import starts.
Importing from people and companies search
- Click
Add data→Find peopleorFind companiesto open a search. - Narrow your search using parameters like
Job title,Experience, andTechnographics(for Find Companies). - Click
Continue→Save to People/Companies.- This sends your search results to a draft — it won't combine them with your existing Audience data until you commit.
- In your draft, click
Enrichto bulk enrich and refine your data, keeping only high-quality leads. - When your search data looks good, click
All Peopleto merge.
Sending data from Clay table
There are two ways to move records from an existing Clay table into your Audience. A column action keeps writing to your Audience as rows run, and a one-time import pulls a table's current rows in once.
With a column action. Reach for this when the table should keep feeding your Audience — after an outreach workflow, or to commit data an unsupported integration brought into the table.
- In the table, click
Add enrichmentand search forUpsert segment record. - Choose whether the rows are people or companies.
- Choose the fields Clay matches on to find an existing record. People match on email, phone, and a professional profile URL; companies match on domain and a professional profile URL.
- Choose the fields to write, mapping each one to the table column that holds its value.
- Save the column and run it. Clay updates the record when a match is found, and creates one when nothing matches.
Blank cells are skipped by default, so an empty column won't clear a value already on the record.
As a one-time import. Reach for this when you want a table's current rows in your Audience and nothing ongoing. It runs the same two-step wizard a CSV import does.
- Click
Add data→Add source→Clay table. - On
Select a Clay table, enter aSource nameand choose theAudience type, then pick thePeople tableorCompanies tableand theViewholding the records you want. - Click
Next, then map your columns onField mapping—Clay PeopleorClay CompaniesagainstTable columns. - Click
Import.
Records saved from tables are automatically deduplicated and merged with your existing audience data.
Entity resolution and deduplication
Clay matches records using a professional profile URL and email to:
- Cross-source deduplication — merge the same person from multiple sources.
- Whitespace detection — exclude CRM records when importing from CPJ/People Search.
Deduplication across sources is automatic. Within Salesforce, it uses Salesforce IDs — org duplicates carry over as-is. Native within-source deduplication is coming.
Records need a high-confidence identifier to match. Auto-enrichment adds a professional profile URL and CPJ ID at no cost to improve matching.
Configuring import record matching
When you import a new data source into Audiences — for example, a Snowflake table after already importing from Salesforce — import record matching lets Clay combine records from multiple sources when they represent the same person or company. It works by checking whether a shared alias field (such as email or domain) matches exactly across sources, and merging the records if it does.
Import record matching is optional and configured per object, directly within the import settings for each source.
Example: If you're importing from both Snowflake and Salesforce, setting domain as your alias field ensures that a single company row in your Audiences reflects data from both sources — rather than creating two separate records for the same company.
To configure import record matching:
- In the import settings panel for any object, find
Import record matchingand clickEdit. - Under
When, choose the alias field to match on — for example,Emailor a professional profile URL for people records, orDomainfor company records. - Under
In, map that alias to the corresponding field in each connected source. - Save your settings. Clay will merge records where the alias values match exactly, combining their data into a single record.
Import record matching vs. automatic deduplication
Clay does automatic deduplication in the background using a professional profile URL + email — no setup required.
Import record matching is the configurable layer: you choose the alias field Clay should use to join a new source’s records to your existing Audiences records.
Use it whenever you add a new source to prevent duplicates from accumulating.
Unique identifier vs. alias field (Snowflake + BigQuery)
When setting up a Snowflake or BigQuery import, you’ll define a Unique Identifier — a field that is unique and non-null within that source (e.g., email for people; domain / work_email_domain for companies). Clay uses it to decide whether an incoming row should create a new record or update an existing one for that source.
This is different from import record matching, which uses an alias field to join records across sources.
Creating an audience
After importing, create audiences to target the right contacts for each use case.
- Click
PeopleorCompaniesin the left sidebar. - Click the
+next toMy Audiences. - Select
Criteriaand then add aFilterorFilter group.
You can filter on three data types simultaneously using AND/OR logic:
- CRM fields (mapped on import) — owner, deal stage, lead status, account type, custom fields.
- Clay enrichment data — firmographics, work email, phone, tech stack.
- Clay signals — job changes, funding, hiring spikes.
New audience-building features:
Create filters with AI— type your filter condition in plain language (e.g., "employee count less than 500") and Clay builds the filter automatically, nesting filter groups when your description mixes AND and OR logic.- Filter groups — combine multiple filter conditions with independent AND/OR operators. Each group has its own set of conditions and its own AND/OR toggle, and groups can be layered for complex segmentation logic.
- Record detail view — click into any record to step through your audience one record at a time and see which fields are filled vs. empty. A cleaner alternative to reading the full grid.
- Archive records — move records out of your active audience without deleting them. Archived records can be browsed and restored at any time. Useful for cleaning up a segment without losing historical data.
- Control credit spend by enriching only relevant records
- Test enrichments on a small subset before scaling
- Avoid enriching duplicate or low-quality records
Email Status = Valid or Company Size > 50 before enriching contact data.
Enriching and monitoring
Adding enrichments
Bulk enrichments add contact data, firmographics, technographics, and more to your audience records at scale. They run on an audience and write results permanently back to All People — not just the segment you ran them from. This means any enriched field is immediately available as a filter in any other segment.
To add an enrichment:
- Navigate to an audience and click
Enrich, thenAdd enrichment tablein the sidebar that opens. - Add enrichment columns as you normally would (e.g.,
Enrich Personfor a professional profile URL, title, phone). - Select which audiences this enrichment should apply to. You can assign one enrichment to multiple audiences at once.
- (Optional) Set a
credit budget— configure a table-level credit cap before running. You can increase the cap incrementally as you validate output. - Test on a small batch first — click
Run 10 rowsto verify output before running at scale. - Configure
Field mappingto determine what writes back to Audiences.- Field mapping is enabled by default. Configure it to persist enriched results to your audience records — you can create a new Audience field on the spot during mapping if one doesn't exist.
- You can disable field mapping if you want to use the enrichment to trigger an action (e.g., enroll in a sequencer) without writing data back to Audiences.
- (Optional) Enable the
Auto-enrich new recordstoggle so new records entering this segment are automatically enriched — typically within 15 minutes. - Click
Finish setup and run.
Editing an enrichment after creation: Click an enrichment in the Data hub sidebar to open the read-only side panel, which shows its status and configuration summary. To change any settings, click Edit enrichment to open the full Bulk Enrich settings page.
Send to Table row cap: If your bulk enrichment's Send table data column targets a table with more than 50,000 rows, you'll see a warning. Enterprise customers can resolve this by enabling auto-deletion (see auto-delete docs) or adding an output column. Non-Enterprise customers should add an output column.
Additional enrichment options:
- Scheduled runs — configure enrichments to run on a daily, monthly, or custom schedule for ongoing maintenance use cases.
- Archived runs — open any enrichment and click
Archived Runto view and export data from previous enrichment runs. Useful for audit trails and recovering past output.
Using Audiences from a Clay table:
Two Clay enrichments let you move data between a Clay table and your Audience directly.
- In any Clay table, click
Add enrichmentand search for: Upsert Audiences Record— pushes records from a table into your Audience, creating a new record or merging with an existing one. Use this to commit data from unsupported integrations, or to send a processed table's contacts into your Audience after an outreach workflow.Lookup Audiences Record— retrieves enrichment data stored in your Audience and pulls it into the table. Use it to reference enriched or signal data in a table workflow without making Salesforce API calls.
Enrichment run order
Each enrichment on an audience is queued as its own job, and several run at the same time. Clay doesn't sequence them, so one enrichment can't wait for another to finish and then read its output. Add them in whatever order suits you — the results land on the record either way.
When one step genuinely depends on another, such as a second enrichment that needs the first one's result as an input, build the chain in Workflows, Clay's automation builder, or as columns in a Clay table. In both, a step that reads another step's output waits for that step to finish before it runs. The Workflows documentation covers how to wire one step into the next.
Signals
Signals monitor your audience for key changes and write results permanently to each matching record so you can segment on them.
To add a signal to a segment:
- Navigate to an audience and click
Enrich. - Click
Signals→ select a signal type (e.g.,Job change). - Set
Include changes within the lastfor the initial run:3 months,6 months, or1 year. - Set the
Frequency— how often it re-runs going forward. Options are Quarterly, Monthly, Biweekly, Weekly, and Daily. - Review the
Costrow shown before the run begins. - Click
Save and run, orSave and re-runif the signal has run before.
After you add a signal:
- Results write to a dedicated signal column on each matching record — stored permanently and globally (not scoped to this segment).
- Clay automatically creates a companion segment combining your original filters plus a filter for the new signal result — this is expected, not an error.
- Multiple signals each get their own column; the
Signal summarycolumn aggregates all results. Click any row to see per-signal detail. - Any other segment that filters on this signal type will also surface these results.
- Signals are also managed centrally in the
Data hub, underSignals; a single signal can apply to multiple audiences at once.
Sending from Audiences
When you have a segment ready, click Send → Sync to ad platforms to push it to an ad platform.
Clay walks you through a short sequence of stages, shown at the top of the panel:
Setup— choose the ad platforms to sync to and confirm the segment you're sending.Review— check the records that will be sent before anything leaves Clay.Sync— clickCreate ad syncto create the sync and send the audience.
For people segments, an extra Map stage appears between Setup and Review, where you choose how hard Clay works to match your records to ad-platform identities. Standard looks across two providers to find the most likely identifiers, Premium adds the highest-quality provider on top of the Standard matches, and None skips matching entirely. Company segments don't have this stage. See Clay Ads for what each option costs and the match rates to expect per platform.
Account-based advertising: sync contact or company segments to supported ad platforms, including Meta and Google Ads. Contacts and accounts who no longer qualify are automatically removed from the synced ad audience. See Clay Ads for the full platform list, setup, and platform-specific guidance.
Legacy ad syncs: a segment that already has an ad sync from the earlier flow shows it under Legacy ad syncs in the Send panel. You can't create a new ad sync on a segment that still has a legacy one — remove the legacy sync first, or build the new sync from a different segment.
For outbound sequencer and other non-ad workflows: use Bulk Enrich with a sequencer action column, or use Upsert Audiences Record to commit qualifying contacts to a Clay table and then enroll them from there.
Writing back to your CRM
Audiences supports bidirectional sync with Salesforce. Enriched data and segment changes write back automatically.
Write-back covers Salesforce Accounts and Contacts.
Map any Clay data or segment membership to CRM fields using the field mapping panel under Settings → Destinations. Examples:
- Personal email → Salesforce
Personal Emailfield. - Segment membership → CRM status, campaign enrollment, lead score, or owner assignment.
Scheduled export rule — each mapped field has a Scheduled export rule that controls whether and how Clay writes that field's value back to your CRM. The default is Never write. Update the rule for any field you want Clay to write back automatically.
Create new Salesforce records — when enabled, Clay creates new records in Salesforce for contacts that don't already exist there. When off, Clay only updates existing records.
Export sync behavior:
- Exports run every 24 hours.
- The first export brings everything over; subsequent syncs are incremental — only changed records are processed.
Writing back to other CRMs
To get enriched Audience data into a CRM other than Salesforce, route it through a Clay table. The table reads the values off your Audience records, then writes them out using that CRM's own action.
- In a table holding the records you want to update, click
Add enrichmentand addLookup in Audiences. It returns the fields and signal results stored on each matching Audience record. - Add the CRM's write action as a second enrichment, mapping its inputs to the values
Lookup in Audiencesreturned. For HubSpot,HubSpot: Update Contactupdates records that already exist andHubSpot: Create recordsadds new ones. - Run the column to write the values out.
To keep a segment feeding that table, add a Send table data column to a bulk enrichment on the segment. Qualifying records flow into the table and get written out from there.
Salesforce API usage
Audiences uses Salesforce's Bulk API 2.0 for both import and export operations. This is separate from your standard REST API limits.
- Import: Uses ~50,000 records per API call. For a 5M-record CRM, this translates to approximately 100 Bulk API calls.
- Export: Uses ~10,000 records per batch. Initial exports consume more API calls, but subsequent incremental syncs only process changed records.
Checking your API limits: Navigate to Setup → System Overview → API Usage in Salesforce to view your remaining Bulk API requests. Most Enterprise Salesforce orgs have limits around 150 million records per day, making API usage a non-issue for the majority of customers.
Seeing your API usage in Clay: Your Salesforce source settings in Audiences show an API usage card — a percentage of your daily quota, plus Calls used for the Last 24 hours. Clay reads these figures from Salesforce's Limits API.
Reading that endpoint takes a permission beyond the one that authenticates the connection. The Salesforce user Clay runs as needs View Setup and Configuration in addition to API Enabled; API Enabled alone is enough to connect and make ordinary API calls, but not to read your quota.
API usage card reading 0% with 0 / 0 calls used means Clay couldn't read your quota from Salesforce — not that nothing has run. Ask your Salesforce admin to open the connected app, go to Manage → Edit Policies, and confirm the Run As user. That user needs View Setup and Configuration through its profile or a permission set. Clay caches quota figures for 15 minutes, so allow that long before reloading.
Reporting
The Reporting tab shows how Clay has contributed to your audience data, and what that data drove downstream. Switch between People and Companies to scope the whole tab to that record type.
Two cards at the top summarize your current data: the total record count for the record type, and the Sources connected to it. Below them, four sections break down Clay's impact.
Clay coverage— how many records ClaySourced,Enriched, andActioned, plusTotal recordsfor the unique records covered by any of the three. Set the window toLast 7 days,Last 30 days, orLast 90 days, and switch betweenCumulativeandDaily.Fields— the fill rate for every field on the record type, so you can see which fields still have missing data. Sort byFill ratesorFill lifts, then clickView all fieldsto open the Data hub.Signals— how many signals fired and how many records have at least one signal, with a trend chart over time and a per-signal breakdown you can sort byMost firedorMost results.Revenue impact—Active pipelineandClosed-won revenuefor deals linked to records Clay sourced, broken out byFrom companiesandFrom people. Click a revenue figure to drill into the underlying deals, each with its stage and close date.
Reporting is available on Enterprise plans. Revenue figures cover deals linked to records Clay sourced — deals where Clay only enriched or actioned an existing record aren't attributed yet. Workspaces that use Audiences for a single use case may see Low data or No data in place of some metrics.
Have questions about Audiences? See Audiences FAQs and best practices.
Explore other docs
Other popular resources
Join a cohort, learn Clay fast!
The faster way to master Clay. Sign in if you're enrolled in a cohort (current or past) or apply!
Hire GTME Talent
Find and connect with GTM talent who've demonstrated expertise in building advanced workflows



