Scale logic refactor