The billing unit for data access through the DealMachine API and CLI. Each unique lead you retrieve with enrichment counts against your plan’s monthly allowance.
What’s Included
All search, lookup, and batch endpoints return enriched data — base fields plus phones, emails, DNC status, and any requested fields. Credits are consumed by entity type: 1 credit per property and 1 credit per person/contact returned.
Use estimate_cost: true on search endpoints to preview the credit cost of a request before
committing to it. Count endpoints are also free.
Base Fields
Properties: dm_property_id, full_address, address, unit, city, state, zip, latitude, longitude, images, num_bedrooms, num_bathrooms, living_area_sqft
Contacts/People: dm_person_id, first_name, last_name, full_name, middle_initial, is_likely_owner, is_in_owner_family, is_resident, is_likely_renter
Enriched Fields
Contacts: phones[] (with number, type, do_not_call), emails[] (with address)
Properties/People: Any fields specified in the fields parameter (e.g., estimated_value, year_built, equity_percent, person_age, etc.)
How Credits Work
| Entity | Cost | Rule |
|---|
| Property lead | 1 credit | Per unique property result |
| People lead | 1 credit | Per unique person/contact result (same person with 3 phones = 1 credit) |
| Returned property contacts | 1 credit | Per unique person/contact returned under a property |
| Returned associated property | 1 credit | Per unique property returned under a person/contact |
What Counts
- Find Properties / property lookup / property enrichment: Costs 1 property enrichment credit per unique property searched, looked up, or enriched. Contacts returned under those properties consume people credits.
- Find People / person lookup / person enrichment: Costs 1 people enrichment credit per unique person/contact searched, looked up, or enriched, regardless of how many phone numbers or emails are returned. Properties returned with those people consume property credits.
- Property filters used for a contact, phone, or email export: Contact, phone, and email rows consume people credits. Chargeable property fields in the same export add property credits.
- Future company search: Company results will follow people billing semantics: 1 people enrichment credit per person returned from the company search.
What Doesn’t Count
- Re-accessing the same property or contact within your billing month (already counted)
- Viewing your account info, filters, or field metadata
- Count endpoints and cost estimates
Credits are deduplicated within your billing period. If you access the same property or
contact multiple times in one month, it only counts once.
Credit Rules by Endpoint
Property Search (POST /v1/properties/search)
anchor | contact_audience | Property Credits | People Credits |
|---|
"properties" | "none" | 1 per property | 0 |
"properties" | "owners" etc. | 1 per property | 1 per returned contact |
"people" | Required | Depends on selected property fields | 1 per returned person |
contact_audience defaults to "owners" on property search. Set it to "none" when you do not
need contacts in the response.
People Search (POST /v1/people/search)
property_match | Person Credits | Property Credits |
|---|
| Not set | 1 per person | 0 |
| Set (with property filters) | 1 per person | 1 per included associated property |
Single Lookups (GET /v1/properties/:id, GET /v1/people/:id)
- Property lookup: 1 property enrichment credit; contacts requested with
contact_audience consume people credits
- Person lookup: 1 people enrichment credit; properties requested with
include_properties=true consume property credits
Batch Lookups (POST /v1/properties/ids, POST /v1/people/ids)
Same credit rules as single lookups, applied per found entity.
Monthly Allowance
Your plan determines your monthly credit allowance:
| Plan | Credits/Month |
|---|
| Starter | 10,000/seat |
| Pro | 20,000/seat |
Credits reset at the start of each billing period.
Overages
We don’t stop you when you hit your monthly limit. Instead, usage beyond your allowance is billed as overages at your plan’s per-credit rate.
Every API response that costs credits includes a credits object so you always know what was charged:
{
"data": [ ... ],
"credits": {
"used": 7,
"properties": 5,
"people": 2,
"deduplicated": 3
}
}
| Field | Description |
|---|
used | New credits charged after deduplication |
properties | Property lead records evaluated in this response |
people | People lead records evaluated in this response |
deduplicated | Entities already accessed this billing period (free) |
The deduplicated field tells you how many entities you already accessed this month — these are
returned for free. Use this to understand your effective cost per request.
Credit Transparency in API Responses
Every endpoint that returns billable data includes a credits object in the response.
Non-billable endpoints (account info, filter metadata, field discovery) do not include the
credits object — only endpoints that access property or contact data.
Estimating Costs Before Searching
Use the estimate_cost parameter on search endpoints to preview the credit cost of a request before committing to it. A cost estimate validates your request and returns a page-aware cost estimate without returning data or consuming credits.
// POST /v1/properties/search { "estimate_cost": true, "per_page": 25, "page": 1, "filters": [...] }
{
"totals": {
"properties": 1847,
"people": 2134
},
"pagination": {
"page": 1,
"per_page": 25,
"total_results": 1847,
"total_pages": 74
},
"estimated_credits": {
"this_page": 25,
"total_all_pages": 1847,
"breakdown": {
"properties": 25,
"people": 0,
"already_accessed": 8,
"note": "Find Properties bills one property credit per property regardless of output shape. Actual credits may be lower due to deduplication within your billing period."
}
}
}
this_page — credits this specific page would consume (accounts for deduplication)
total_all_pages — credits all pages combined would consume
already_accessed — entities you’ve already retrieved this billing period (free)
Cost estimate is available on both Search Properties and Search People.
To get just the total count of matching results (without cost estimates), use the count
endpoints: Count Properties or Count
People. Count endpoints are also free.
Checking Usage
Via CLI
# Coming soon
dealmachine credits
Via API
curl https://api.v2.dealmachine.com/v1/usage \
-H "Authorization: Bearer dm_sk_live_xxx"
Returns your plan, billing cycle dates, total credits used/remaining, and a per-entity breakdown. See Get Credit Usage for full details.
API/CLI credits are tracked separately from the web export system. While the underlying data
is the same, API usage has its own credit tracking table and billing logic. This ensures accurate
metering for programmatic access.
Licensed Locations
If your organization has location licenses (state, county, city, or ZIP), data retrieved within those licensed areas does not count against your credit allowance.
Licensed entities are written to the ledger with credits_used: 0 and a license_id, so they remain unlocked and deduplicated for the billing period without consuming credits.