Please add IOR
0.04 + metalness * (albedo - 0.04) = (ior-1)*(ior-1)/((ior+1)*(ior+1)),
where metalness and albedo packed to 0-1 float
there 3 IOR's, one for each albedo component
but for non-metals all 3 same and equal to 1.5 (ior of plastic)
From Substance and this information https://seblagarde.wordpress.com/2011/08/17/feeding-a-physical-based-lighting-mode/
It's my understanding that PBR rendering handles IOR for you.