> ## Documentation Index
> Fetch the complete documentation index at: https://developers.hubspot.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

---
id: 8241480d-a5c4-432e-a2b6-c1ed589709b2
---

# Limits tracking

> Learn how to view an account's usage and limits for CRM data such as records, associations, pipelines, and properties.

export const PostmanCard = ({title, collectionId}) => {
  return <div className="card-condensed-cta">
      <Card title={title ? title : "Postman collection"} href={`https://app.getpostman.com/run-collection/${collectionId}`} horizontal={true} cta="Run in Postman" icon={<svg xmlns="http://www.w3.org/2000/svg" width={25} height={25} preserveAspectRatio="xMidYMid" viewBox="0 0 256 256">
              <path fill="#FF6C37" d="M254.953 144.253c8.959-70.131-40.569-134.248-110.572-143.206C74.378-7.912 10.005 41.616 1.047 111.619c-8.959 70.003 40.569 134.248 110.572 143.334 70.131 8.959 134.248-40.569 143.334-110.7Z" />
              <path fill="#FFF" d="m174.2 82.184-54.007 54.007-15.229-15.23c53.11-53.11 58.358-48.503 69.236-38.777Z" />
              <path fill="#FF6C37" d="M120.193 137.47c-.384 0-.64-.128-.895-.384l-15.358-15.229a1.237 1.237 0 0 1 0-1.792c54.007-54.006 59.638-48.887 71.028-38.649.255.256.383.512.383.896s-.128.64-.383.896l-54.007 53.878c-.128.256-.512.384-.768.384Zm-13.437-16.509 13.437 13.438 52.087-52.087c-9.47-8.446-15.87-11.006-65.524 38.65Z" />
              <path fill="#FFF" d="m135.679 151.676-14.718-14.718 54.007-54.006c14.46 14.59-7.167 38.265-39.29 68.724Z" />
              <path fill="#FF6C37" d="M135.679 152.956c-.384 0-.64-.128-.896-.384l-14.718-14.718c-.256-.256-.256-.512-.256-.896s.128-.64.384-.895L174.2 82.056a1.237 1.237 0 0 1 1.791 0 15.58 15.58 0 0 1 4.991 11.902c-.256 14.206-16.38 32.25-44.28 58.614-.383.256-.767.384-1.023.384Zm-12.926-15.998c8.19 8.319 11.646 11.646 12.926 12.926 21.5-20.476 42.36-41.464 42.488-55.926.128-3.327-1.152-6.655-3.327-9.214l-52.087 52.214Z" />
              <path fill="#FFF" d="m105.22 121.345 10.878 10.878c.256.256.256.512 0 .768-.128.128-.128.128-.256.128l-22.524 4.863c-1.152.128-2.175-.64-2.431-1.791-.128-.64.128-1.28.512-1.664l13.053-13.054c.256-.256.64-.384.768-.128Z" />
              <path fill="#FF6C37" d="M92.934 139.262c-1.92 0-3.327-1.536-3.327-3.455 0-.896.384-1.792 1.024-2.432l13.053-13.054c.768-.64 1.792-.64 2.56 0l10.878 10.878c.768.64.768 1.792 0 2.56-.256.256-.512.384-.896.512l-22.524 4.863c-.256 0-.512.128-.768.128Zm11.902-16.51-12.542 12.543c-.256.256-.383.64-.128 1.024.128.383.512.511.896.383l21.116-4.607-9.342-9.342Z" />
              <path fill="#FFF" d="M202.739 52.238c-8.191-7.935-21.373-7.679-29.307.64-7.935 8.318-7.679 21.372.64 29.306A20.678 20.678 0 0 0 199.155 85l-14.59-14.59 18.174-18.172Z" />
              <path fill="#FF6C37" d="M188.405 89.223c-12.158 0-22.012-9.854-22.012-22.012 0-12.158 9.854-22.012 22.012-22.012 5.631 0 11.134 2.176 15.23 6.143.255.256.383.512.383.896s-.128.64-.384.895L186.357 70.41l13.566 13.566c.512.512.512 1.28 0 1.792l-.256.256c-3.327 2.047-7.295 3.199-11.262 3.199Zm0-41.337c-10.75 0-19.452 8.703-19.324 19.453 0 10.75 8.702 19.452 19.452 19.324 2.944 0 5.887-.64 8.575-2.047l-13.438-13.31c-.256-.256-.384-.512-.384-.896s.128-.64.384-.895l17.149-17.15c-3.456-2.943-7.807-4.479-12.414-4.479Z" />
              <path fill="#FFF" d="m203.122 52.622-.255-.256-18.301 18.044 14.461 14.462c1.408-.896 2.816-1.92 3.967-3.072a20.51 20.51 0 0 0 .128-29.178Z" />
              <path fill="#FF6C37" d="M199.155 86.28c-.384 0-.64-.128-.896-.384l-14.589-14.59c-.256-.256-.384-.512-.384-.896s.128-.64.384-.895l18.173-18.173a1.237 1.237 0 0 1 1.791 0l.384.256c8.575 8.574 8.575 22.396.128 31.098-1.28 1.28-2.687 2.432-4.223 3.328-.384.128-.64.256-.768.256Zm-12.798-15.87 12.926 12.926c1.024-.64 2.048-1.536 2.816-2.304 7.294-7.294 7.678-19.196.64-26.875L186.357 70.41Z" />
              <path fill="#FFF" d="M176.375 84.488a7.879 7.879 0 0 0-11.134 0l-48.247 48.247 8.063 8.063 51.062-44.792c3.328-2.816 3.584-7.807.768-11.134-.256-.128-.384-.256-.512-.384Z" />
              <path fill="#FF6C37" d="M124.929 142.077c-.384 0-.64-.128-.896-.383l-8.063-8.063a1.237 1.237 0 0 1 0-1.792l48.247-48.247a9.115 9.115 0 0 1 12.926 0 9.115 9.115 0 0 1 0 12.926l-.384.384-51.063 44.792c-.128.255-.384.383-.767.383Zm-6.143-9.342 6.27 6.271 50.167-44.024c2.816-2.304 3.072-6.527.768-9.342-2.303-2.816-6.526-3.072-9.342-.768-.128.128-.256.256-.512.384l-47.351 47.48Z" />
              <path fill="#FFF" d="M80.009 187.637c-.512.256-.768.768-.64 1.28l2.175 9.214c.512 1.28-.256 2.816-1.663 3.2-1.024.384-2.176 0-2.816-.768l-14.077-13.95 45.943-45.943 15.87.256 10.75 10.75c-2.56 2.175-18.045 17.149-55.542 35.961Z" />
              <path fill="#FF6C37" d="M78.985 202.61c-1.024 0-2.048-.383-2.688-1.151l-13.95-13.95c-.255-.256-.383-.512-.383-.896 0-.383.128-.64.384-.895l45.944-45.944c.256-.256.64-.384.895-.384l15.87.256c.383 0 .64.128.895.384l10.75 10.75c.256.256.384.64.384 1.024s-.128.64-.512.896l-.895.767c-13.566 11.902-31.995 23.804-54.902 35.194l2.175 9.086c.384 1.664-.384 3.456-1.92 4.352-.767.384-1.407.512-2.047.512Zm-14.078-15.997 13.182 13.054c.384.64 1.152.896 1.792.512.64-.384.896-1.152.512-1.792l-2.176-9.214c-.256-1.152.256-2.176 1.28-2.688 22.652-11.39 40.952-23.163 54.39-34.81l-9.47-9.47-14.718-.256-44.792 44.664Z" />
              <path fill="#FFF" d="m52.11 197.62 11.006-11.007 16.38 16.381-26.107-1.791c-1.151-.128-1.92-1.152-1.791-2.304 0-.512.128-1.024.512-1.28Z" />
              <path fill="#FF6C37" d="m79.497 204.146-26.236-1.791c-1.92-.128-3.199-1.792-3.071-3.712.128-.768.384-1.535 1.024-2.047L62.22 185.59a1.237 1.237 0 0 1 1.792 0l16.38 16.38c.385.385.512.897.257 1.408-.256.512-.64.768-1.152.768Zm-16.381-15.74-10.11 10.11c-.384.255-.384.895 0 1.151.127.128.255.256.511.256l22.652 1.536-13.053-13.054ZM104.452 146.557c-.768 0-1.28-.64-1.28-1.28 0-.384.128-.64.384-.896l12.414-12.414a1.237 1.237 0 0 1 1.792 0l8.062 8.063c.384.384.512.768.384 1.28-.128.384-.512.767-1.023.895l-20.477 4.352h-.256Zm12.414-11.902-8.446 8.446 13.821-2.943-5.375-5.503Z" />
              <path fill="#FFF" d="m124.8 140.926-14.077 3.071c-1.024.256-2.048-.384-2.303-1.408-.128-.64 0-1.28.511-1.791l7.807-7.807 8.063 7.935Z" />
              <path fill="#FF6C37" d="M110.467 145.277a3.168 3.168 0 0 1-3.2-3.2c0-.895.385-1.663.897-2.303l7.806-7.807a1.237 1.237 0 0 1 1.792 0l8.062 8.063c.384.384.512.768.384 1.28-.128.384-.512.767-1.023.895l-14.078 3.072h-.64Zm6.399-10.622-6.91 6.91c-.257.257-.257.512-.129.768s.384.384.768.384l11.774-2.56-5.503-5.502ZM203.25 64.907c-.256-.767-1.151-1.151-1.92-.895-.767.255-1.151 1.151-.895 1.92 0 .127.128.255.128.383.768 1.536.512 3.455-.512 4.863-.512.64-.384 1.536.128 2.048.64.512 1.536.384 2.048-.256 1.92-2.432 2.303-5.503 1.023-8.063Z" />
            </svg>} />
    </div>;
};

export const ScopesList = ({scopes = [], description = "This API requires one of the following scopes:"}) => {
  if (!scopes || scopes.length === 0) {
    return null;
  }
  const sortedScopes = scopes.sort((a, b) => a.localeCompare(b));
  return <div>
      <div className="text-sm mb-2">{description}</div>
      <div>
        {sortedScopes.map((scope, index) => <div key={index}>
            <code>
              <span className="text-xs">{scope}</span>
            </code>
          </div>)}
      </div>
    </div>;
};

<PostmanCard collectionId="26126890-080791a2-8a26-431b-ba1e-8a5cdae40bfd" />

<Accordion title="Scope requirements">
  <ScopesList
    scopes={[
  'crm.objects.appointments.read',
  'crm.objects.appointments.sensitive.read.v2',
  'crm.objects.appointments.sensitive.write.v2',
  'crm.objects.appointments.write',
  'crm.objects.carts.read',
  'crm.objects.carts.write',
  'crm.objects.commercepayments.read',
  'crm.objects.commercepayments.write',
  'crm.objects.companies.highly_sensitive.read.v2',
  'crm.objects.companies.highly_sensitive.write.v2',
  'crm.objects.companies.read',
  'crm.objects.companies.sensitive.read.v2',
  'crm.objects.companies.sensitive.write.v2',
  'crm.objects.companies.write',
  'crm.objects.contacts.highly_sensitive.read.v2',
  'crm.objects.contacts.highly_sensitive.write.v2',
  'crm.objects.contacts.read',
  'crm.objects.contacts.sensitive.read.v2',
  'crm.objects.contacts.sensitive.write.v2',
  'crm.objects.contacts.write',
  'crm.objects.courses.read',
  'crm.objects.courses.write',
  'crm.objects.custom.highly_sensitive.read.v2',
  'crm.objects.custom.highly_sensitive.write.v2',
  'crm.objects.custom.read',
  'crm.objects.custom.sensitive.read.v2',
  'crm.objects.custom.sensitive.write.v2',
  'crm.objects.custom.write',
  'crm.objects.deals.highly_sensitive.read.v2',
  'crm.objects.deals.highly_sensitive.write.v2',
  'crm.objects.deals.read',
  'crm.objects.deals.sensitive.read.v2',
  'crm.objects.deals.sensitive.write.v2',
  'crm.objects.deals.write',
  'crm.objects.goals.read',
  'crm.objects.goals.write',
  'crm.objects.invoices.read',
  'crm.objects.invoices.write',
  'crm.objects.leads.read',
  'crm.objects.leads.write',
  'crm.objects.line_items.read',
  'crm.objects.line_items.write',
  'crm.objects.listings.read',
  'crm.objects.listings.write',
  'crm.objects.orders.read',
  'crm.objects.orders.write',
  'crm.objects.partner-clients.read',
  'crm.objects.partner-clients.write',
  'crm.objects.partner-services.read',
  'crm.objects.partner-services.write',
  'crm.objects.products.read',
  'crm.objects.products.write',
  'crm.objects.quotes.read',
  'crm.objects.quotes.write',
  'crm.objects.services.read',
  'crm.objects.services.write',
  'crm.objects.subscriptions.read',
  'crm.objects.subscriptions.write',
  'crm.objects.users.read',
  'crm.objects.users.write',
  'crm.schemas.custom.read',
  'e-commerce',
  'media_bridge.read',
  'tickets',
  'tickets.highly_sensitive.v2',
  'tickets.sensitive.v2'
]}
  />
</Accordion>

In your HubSpot account, there are limits to the amount of CRM data you can store. Some limits are technical, but others depend on your [HubSpot subscription](https://legal.hubspot.com/hubspot-product-and-services-catalog). You can [track your usage in HubSpot](https://knowledge.hubspot.com/data-management/track-crm-data-limits) or use the limits tracking API to check your limits and usage for the following data:

* Records
* Associations
* Custom properties
* Pipelines
* Calculated properties (*Professional* and *Enterprise* only)
* Association labels (*Professional* and *Enterprise* only)
* Custom objects (*Enterprise* only)

## Retrieve record limits and usage

To view the number of records your account can store per object and how many records you're currently storing, make a `GET` request to `/crm/v3/limits/records`.

In the response, default objects are returned in the `hubspotDefinedObjectTypes` array. For each object, the following are returned:

* `limit`: the number of records you can store for the object.
* `usage`: the number of records in the account for the object.
* `percentage`: the percentage of the total limit used.

If applicable, custom objects are returned in the `customObjectTypes` object with individual object data and total custom object record limits and usage. Learn more about [custom object definition limits](#retrieve-custom-object-limits-and-usage).

Your response will look similar to the following:

```json theme={null}
{
  "hubspotDefinedObjectTypes": [
    {
      "objectTypeId": "0-421",
      "singularLabel": "Appointment",
      "pluralLabel": "Appointments",
      "limit": 500000,
      "usage": 0,
      "percentage": 0
    },
    {
      "objectTypeId": "0-2",
      "singularLabel": "Company",
      "pluralLabel": "Companies",
      "limit": 15000000,
      "usage": 94,
      "percentage": 0.001
    },
    {
      "objectTypeId": "0-1",
      "singularLabel": "Contact",
      "pluralLabel": "Contacts",
      "limit": 15000000,
      "usage": 133,
      "percentage": 0.001
    },
    {
      "objectTypeId": "0-3",
      "singularLabel": "Deal",
      "pluralLabel": "Deals",
      "limit": 15000000,
      "usage": 188,
      "percentage": 0.001
    },
    {
      "objectTypeId": "0-53",
      "singularLabel": "Invoice",
      "pluralLabel": "Invoices",
      "limit": 15000000,
      "usage": 1,
      "percentage": 0
    },
    {
      "objectTypeId": "0-54",
      "singularLabel": "Marketing event",
      "pluralLabel": "Marketing events",
      "limit": 15000000,
      "usage": 2,
      "percentage": 0
    },
    {
      "objectTypeId": "0-7",
      "singularLabel": "Product",
      "pluralLabel": "Products",
      "limit": 15000000,
      "usage": 5,
      "percentage": 0
    },
    {
      "objectTypeId": "0-162",
      "singularLabel": "Service",
      "pluralLabel": "Services",
      "limit": 500000,
      "usage": 0,
      "percentage": 0
    },
    {
      "objectTypeId": "0-5",
      "singularLabel": "Ticket",
      "pluralLabel": "Tickets",
      "limit": 15000000,
      "usage": 28,
      "percentage": 0
    }
  ],
  "customObjectTypes": {
    "overallLimit": 1500000,
    "overallUsage": 8,
    "overallPercentage": 0.001,
    "byObjectType": [
      {
        "objectTypeId": "2-19187792",
        "singularLabel": "Car",
        "pluralLabel": "Cars",
        "usage": 1
      },
      {
        "objectTypeId": "2-2140579",
        "singularLabel": "Pet",
        "pluralLabel": "Pets",
        "usage": 7
      }
    ]
  }
}
```

## Retrieve record association limits and usage

In HubSpot, an individual record can only be associated to a specific number of records of the same or another object. For example, by default, a single contact record can be associated with up to 50,000 company records. You can use the association limit endpoints to check for records that are close to (80%+) or at the association limit. Learn more about technical [limits for record associations](https://legal.hubspot.com/hubspot-product-and-services-catalog#TechnicalLimits).

* To check which objects have records that are close to or at the association limit, make a `GET` request to `crm/v3/limits/associations/records/from`.

An object will be included in the response if it has records approaching or at the limit. If no records are close to or have reached an association limit, the response will be blank. To drill down into the specific object associations, you can use the endpoints below.

* To check which associated object types have records approaching or at the association limit for a specific object type, make a `GET` request to `crm/v3/limits/associations/records/{fromObjectTypeId}/to`.

If records of the `fromObjectType` are approaching or at the association limit for an associated object, that object will be included in the response. For example, if you make a request for companies (i.e. `crm/v3/limits/associations/records/0-2/to`) and there is a company record associated with 48,000 contacts and 46,000 deals, contacts and deals will be included in the response.

* To view a sample of specific records approaching or at an association limit between two objects, make a `GET` request to `crm/v3/limits/associations/records/{fromObjectTypeId}/{toObjectTypeId}`.

In the response, the following are returned:

* `limit`: refers to the number of associated records each record can have.
* `totalRecordsNearLimit`: counts the number of records using 80% or more of their association limit.
* `totalRecordsAtLimit`: counts the number of records that have reached the limit.
* If any records are near or at the limit, a sample of record `id` values will be included in the `nearLimitFromRecordSamples` and `atLimitFromRecordSamples` arrays.

For example, to retrieve records approaching limits for contacts to companies, you'd make a `GET` request to `crm/v3/limits/associations/records/0-1/0-2`. If no records are close to or at the limit, the response would look like the following:

```json theme={null}
{
  "limit": 50000,
  "totalRecordsNearLimit": 0,
  "totalRecordsAtLimit": 0,
  "nearLimitFromRecordSamples": [],
  "atLimitFromRecordSamples": []
}
```

## Retrieve association label limits and usage

If your account has a *Professional* or *Enterprise* subscription, you can check the limits and usage for custom association labels.

* To track limits for all association labels in the account, make a `GET` request to `crm/v3/limits/associations/labels`.
* To track limits for association labels from one object or to all other objects, make a `GET` request to `crm/v3/limits/associations/labels` and include the `fromObjectTypeId` or `toObjectTypeId` parameter. For example, `crm/v3/limits/associations/labels/?fromObjectTypeId=0-1` or `crm/v3/limits/associations/labels/?toObjectTypeId=0-1`.
* To track limits for association labels from one object to another specific object, make a `GET` request to `crm/v3/limits/associations/labels` and include the `fromObjectTypeId` and `toObjectTypeId` parameters. For example, `crm/v3/limits/associations/labels/?fromObjectTypeId=0-1&toObjectTypeId=0-2`.

In the response, the following are returned:

* `limit`: refers to the number of association labels you can create between the objects.
* `usage`: the number of labels created in the account.
* `percentage`: the percentage of the total limit used.
* `allLabels`: an array with the names of the custom labels.

For example, to retrieve association label limits and usage for contacts to companies, you'd make a `GET` request to `crm/v3/limits/associations/labels/?fromObjectTypeId=0-1&toObjectTypeId=0-2`. Your response would look similar to the sample below. In this example, six out of 50 labels are created for contact to company associations.

```json theme={null}
{
  "results": [
    {
      "limit": 50,
      "usage": 6,
      "percentage": 12,
      "fromObjectType": {
        "objectTypeId": "0-1",
        "singularLabel": "Contact",
        "pluralLabel": "Contacts"
      },
      "toObjectType": {
        "objectTypeId": "0-2",
        "singularLabel": "Company",
        "pluralLabel": "Companies"
      },
      "allLabels": [
        "Billing contact",
        "Chef",
        "Contract worker",
        "Decision maker",
        "Franchise location",
        "Manager"
      ]
    }
  ]
}
```

## Retrieve property limits and usage

You can view limits and usage for properties, including the number of custom properties or calculation properties you've created. The number of properties can create depends on your [HubSpot subscription](https://legal.hubspot.com/hubspot-product-and-services-catalog).

### Custom properties

To track how many custom properties you've created overall and per object, make a `GET` request to `crm/v3/limits/custom-properties`.

In the response, the following are returned:

* `overallLimit`: the limit for custom properties across all objects.
* `overallUsage`: the total number of custom properties in the account.
* `overallPercentage`: the percentage of the limit used.
* The `byObjectType` array includes the following for each object:
  * `limit`: the number of custom properties you can create for the object.
  * `usage`: the number of custom properties you've created for the object.
  * `percentage`: the percentage of the total limit used.

<Warning>
  **Please note:**

  The `overallLimit` and by object `limit` values are distinct and separate, so the overall limit may not equal the sum of by object limits.
</Warning>

Your response will look similar to the following:

```json theme={null}
{
  "overallLimit": 10000,
  "overallUsage": 59,
  "overallPercentage": 0.59,
  "byObjectType": [
    {
      "objectTypeId": "0-421",
      "singularLabel": "Appointment",
      "pluralLabel": "Appointments",
      "limit": 1000,
      "usage": 4,
      "percentage": 0.4
    },
    {
      "objectTypeId": "2-19187792",
      "singularLabel": "Car",
      "pluralLabel": "Cars",
      "limit": 1000,
      "usage": 1,
      "percentage": 0.1
    },
    {
      "objectTypeId": "0-2",
      "singularLabel": "Company",
      "pluralLabel": "Companies",
      "limit": 1000,
      "usage": 4,
      "percentage": 0.4
    },
    {
      "objectTypeId": "0-1",
      "singularLabel": "Contact",
      "pluralLabel": "Contacts",
      "limit": 1000,
      "usage": 58,
      "percentage": 5.8
    },
    {
      "objectTypeId": "0-3",
      "singularLabel": "Deal",
      "pluralLabel": "Deals",
      "limit": 1000,
      "usage": 15,
      "percentage": 1.5
    },
    {
      "objectTypeId": "2-19188239",
      "singularLabel": "Dress",
      "pluralLabel": "Dresses",
      "limit": 1000,
      "usage": 3,
      "percentage": 0.3
    },
    {
      "objectTypeId": "2-7282133",
      "singularLabel": "Menu item",
      "pluralLabel": "Menu items",
      "limit": 1000,
      "usage": 1,
      "percentage": 0.1
    },
    {
      "objectTypeId": "2-2140579",
      "singularLabel": "Pet",
      "pluralLabel": "Pets",
      "limit": 1000,
      "usage": 7,
      "percentage": 0.7
    },
    {
      "objectTypeId": "0-162",
      "singularLabel": "Service",
      "pluralLabel": "Services",
      "limit": 1000,
      "usage": 0,
      "percentage": 0
    },
    {
      "objectTypeId": "0-5",
      "singularLabel": "Ticket",
      "pluralLabel": "Tickets",
      "limit": 1000,
      "usage": 1,
      "percentage": 0.1
    }
  ]
}
```

### Calculated properties

If your account has a *Professional* or *Enterprise* subscription, you can track how many [calculation properties](https://knowledge.hubspot.com/properties/create-calculation-properties) you've created. To track calculation property usage overall and per object, make a `GET` request to `crm/v3/limits/calculated-properties`.

In the response, the following are returned:

* `overallLimit`: the limit for calculation properties across all objects.
* `overallUsage`: the total number of calculation properties in the account.
* `overallPercentage`: the percentage of the limit used.
* The `byObjectType` array includes each object with a `usage` value, which refers to the number of calculation properties you've created for the object.

Your response would look similar to the following:

```json theme={null}
{
  "overallLimit": 200,
  "overallUsage": 8,
  "overallPercentage": 4,
  "byObjectType": [
    {
      "objectTypeId": "0-421",
      "singularLabel": "Appointment",
      "pluralLabel": "Appointments",
      "usage": 0
    },
    {
      "objectTypeId": "2-19187792",
      "singularLabel": "Car",
      "pluralLabel": "Cars",
      "usage": 0
    },
    {
      "objectTypeId": "0-2",
      "singularLabel": "Company",
      "pluralLabel": "Companies",
      "usage": 0
    },
    {
      "objectTypeId": "0-1",
      "singularLabel": "Contact",
      "pluralLabel": "Contacts",
      "usage": 3
    },
    {
      "objectTypeId": "0-3",
      "singularLabel": "Deal",
      "pluralLabel": "Deals",
      "usage": 3
    },
    {
      "objectTypeId": "2-19188239",
      "singularLabel": "Dress",
      "pluralLabel": "Dresses",
      "usage": 0
    },
    {
      "objectTypeId": "2-7282133",
      "singularLabel": "Menu item",
      "pluralLabel": "Menu items",
      "usage": 0
    },
    {
      "objectTypeId": "2-2140579",
      "singularLabel": "Pet",
      "pluralLabel": "Pets",
      "usage": 0
    },
    {
      "objectTypeId": "0-162",
      "singularLabel": "Service",
      "pluralLabel": "Services",
      "usage": 0
    },
    {
      "objectTypeId": "0-5",
      "singularLabel": "Ticket",
      "pluralLabel": "Tickets",
      "usage": 0
    }
  ]
}
```

## Retrieve pipeline limits and usage

To view pipeline limits and usage per object, make a `GET` request to `crm/v3/limits/pipelines`.

Default objects with [pipelines](/api-reference/legacy/crm/pipelines/guide) will be returned in the `hubspotDefinedObjectTypes` array. For each object, the following are returned:

* `limit`: the number of pipelines you can create for the object.
* `usage`: the number of pipelines created for the object.
* `percentage`: the percentage of the total limit used.

If applicable, custom objects are returned in the `customObjectTypes` object with individual object data and total custom object pipeline limits and usage. Learn more about [custom object definition limits](#retrieve-custom-object-limits-and-usage).

Your response will look similar to the following:

```json theme={null}
{
  "hubspotDefinedObjectTypes": [
    {
      "objectTypeId": "0-421",
      "singularLabel": "Appointment",
      "pluralLabel": "Appointments",
      "limit": 15,
      "usage": 1,
      "percentage": 6.667
    },
    {
      "objectTypeId": "0-3",
      "singularLabel": "Deal",
      "pluralLabel": "Deals",
      "limit": 100,
      "usage": 5,
      "percentage": 5
    },
    {
      "objectTypeId": "0-136",
      "singularLabel": "Lead",
      "pluralLabel": "Leads",
      "limit": 15,
      "usage": 1,
      "percentage": 6.667
    },
    {
      "objectTypeId": "0-123",
      "singularLabel": "Order",
      "pluralLabel": "Orders",
      "limit": 50,
      "usage": 1,
      "percentage": 2
    },
    {
      "objectTypeId": "0-162",
      "singularLabel": "Service",
      "pluralLabel": "Services",
      "limit": 15,
      "usage": 1,
      "percentage": 6.667
    },
    {
      "objectTypeId": "0-5",
      "singularLabel": "Ticket",
      "pluralLabel": "Tickets",
      "limit": 100,
      "usage": 4,
      "percentage": 4
    }
  ],
  "customObjectTypes": {
    "overallLimit": 100,
    "overallUsage": 3,
    "overallPercentage": 3,
    "byObjectType": [
      {
        "objectTypeId": "2-19187792",
        "singularLabel": "Car",
        "pluralLabel": "Cars",
        "usage": 0
      },
      {
        "objectTypeId": "2-19188239",
        "singularLabel": "Dress",
        "pluralLabel": "Dresses",
        "usage": 1
      },
      {
        "objectTypeId": "2-2140579",
        "singularLabel": "Pet",
        "pluralLabel": "Pets",
        "usage": 2
      }
    ]
  }
}
```

## Retrieve custom object limits and usage

If your account has a *Enterprise* subscription, you can view limits and usage for the [custom objects](/api-reference/legacy/crm/objects/schemas/guide) defined in the account. If you want to view how many custom object <u>records</u> you can create, use the [record limits endpoint](#retrieve-record-limits-and-usage) instead.

To retrieve custom object limits and usage, make a `GET` request to `crm/v3/limits/custom-object-types`.

In the response, the following are returned:

* `limit`: the number of custom objects you can create.
* `usage`: the number of custom objects you've created.
* `percentage`: the percentage of the total limit used.

Your response would look similar to the sample below. In this example, the account has created four custom objects.

```json theme={null}
{
  "limit": 20,
  "usage": 4,
  "percentage": 20
}
```
