How is my $PATH variable built on macOS?
The INVOCATION section of the bash man page says


  When bash is invoked as an interactive login shell, or as a non-interactive shell with the --login option, it first reads and executes commands from the file /etc/profile, if that file exists. After reading
  that file, it looks for ~/.bash_profile, ~/.bash_login, and
  ~/.profile, in that order, and reads and executes commands from the
  first one that exists and is readable.


Of particular interest is /etc/profile, which uses path_helper to build a path from what it finds in /etc/paths and /etc/paths.d/*.