I'm working in the Dev Console, trying to help out a friend who needs a custom subset of data that his useless consult can't seem to figure out.

I can successfully query the standard objects, but when I query a custom object, the query comes back empty, no matter how simple it is. It will execute without generating any error messages, but returns zero rows. (And there is definitely data in the object.)

For example, I get nothing from this query on the custom Household obj:

SELECT Id, Name FROM npo02__Household__c (no rows)

But I can successfully retrieve everything expected from a standard object like Contact:

SELECT Id, FirstName FROM Contact (works fine)

I'm coming from a general DB background, but entirely new to Salesforce, so I feel like I must be missing some kind of API setting or something like that. Can someone point me in the right direction here?

1 Answer 1


The npo02__Household__c object is used in the "One to One" and "Bucket" account models, primarily used with very old versions of the Nonprofit Success Pack. NPSP 3 and later use the Household Account Model, where the Account object represents the Household instead of this obsolete custom object. It is highly likely that your friend is using the modern Household Account Model and not using this object.

Account models are documented at

It's important to note that the Nonprofit Success Pack has a complex data model that is tailored for nonprofits. Things you read elsewhere about the standard Salesforce data model and intuitions from other database platforms may apply differently to NPSP. I would strongly recommend reviewing NPSP-specific resources to understand its data model. There are Trailhead modules available in addition to the documentation linked above.

Disclosure: I support the NPSP product team at Salesforce.org.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .