Custom transformations can be either active or passive based on a user-configurable property. Active transformations change the number of rows passing through them, while passive transformations do not. The transformation type is not determined by algorithms, API functions, nor are they always active.