Skip to main content

Admin | Custom Record Types Inventory by Owner

Lists all custom record types in your NetSuite account, grouped by owner, including script ID and description for governance and documentation.

Updated over a week ago

Purpose of this query

This SuiteQL statement provides a structured inventory of all custom record types defined in the account. It returns the internal owner ID, readable owner name, custom record name, script ID, and description. This report is useful for customization audits, environment comparisons, ownership reviews, and cleanup initiatives. Sorting by owner and name makes it easy to see which teams or developers are responsible for which custom record types.

SuiteQL

SELECT
owner AS "Owner ID",
BUILTIN.DF(owner) AS "Owner Name",
name AS "Custom Record Name",
scriptid AS "Script ID",
description AS "Description"
FROM
customrecordtype
ORDER BY
owner,
name;

Sample Output

How the query works

  1. Reading custom record metadata

    The query selects from the customrecordtype table, which stores configuration details for each custom record type in NetSuite.

  2. Showing both owner ID and readable owner name

    owner returns the internal ID of the record owner. BUILTIN.DF(owner) converts that value into a human-readable name for easier review and follow-up.

  3. Returning script ID for technical reference

    scriptid is the unique identifier used in SuiteScript, SuiteQL, and integrations. This is especially helpful for developers and administrators managing integrations or deployments.

  4. Including description for documentation

    The description field helps clarify the purpose of each custom record type, supporting documentation and governance reviews.

  5. Ordering by owner and name

    Sorting first by owner groups custom record types by responsible party, then alphabetically by name for clarity.

Why this report is useful

• Customization governance: quickly identify which custom record types exist and who owns them.

• Environment comparison: export from sandbox and production to compare script IDs and detect missing or extra record types.

• Documentation support: use as a foundation for maintaining an internal customization catalog.

• Ownership accountability: surface custom record types with unclear or outdated ownership.

• Pre-upgrade review: validate custom record structures before major NetSuite releases.

Customization notes

• Filter by owner: add WHERE owner = <internal_id> to review one team’s custom records.

• Filter by name pattern: add WHERE name LIKE ‘%keyword%’ to search for specific record types.

• Include last modified date: add lastmodifieddate to monitor recent changes.

• Combine with custom field inventory: join to customfield tables if you want to review fields tied to each custom record type.

• Use in Excel: export and pivot by Owner Name to see how customization responsibility is distributed.

Did this answer your question?