Surabaya City, especially the western area of Surabaya, is utilized for industrial space, warehousing, final disposal sites (FDS), and port areas. Activities in these areas produce emissions, particularly PM2.5 (particulate matter smaller than 2.5 µm) and PM10 (particulate matter smaller than 10 µm). PM2.5 and PM2.5−10 contain metals and can cause respiratory disorders and death. Therefore, it is necessary to determine the concentrations of PM2.5 and PM2.5−10 and the heavy metals contained in the PMs. Sampling for PM2.5 and PM2.5−10 was conducted using a Gent Stacked Filter Unit (Gent SFU) every six (6) days between October 2019–April 2020. The samples were then analyzed using gravimetry to determine mass concentrations of PM2.5 and PM10 and analyzed using XRF (X-Ray Fluorescence) to determine the elements contained within PM2.5 and PM2.5−10 and their concentrations. The elemental concentrations were used as Positive Matrix Factorization (PMF) inputs to identify potential pollutant sources. The results of the PMF analysis were then used to determine the source locations of pollutants by using a Conditional Probability Function (CPF). The observed concentrations of PM2.5 and PM10 are 11.47 µg/m3 and 27.49 µg/m3, or 11.45 µg/Nm3 and 26.98 µg/Nm3. 18 elements are identified in the PM, namely Na, Mg, Al, Si, S, K, Cl, Ca, Ti, V, Cr, Mn, Fe, Ni, Cu, Zn, Br, and Pb. Potential sources of PM2.5 pollutants are a combination of Cu industries, biomass burning, Ni industries, non-ferrous metal industries, transportation activities, iron and steel industries, construction activities, dust, port activities, and Pb industries. Potential sources of PM2.5−10 pollutants are construction activities, dust, transportation activities, non- ferrous metals industries, and Ni industries. The estimated source locations of the pollutants contributing to PM2.5 and PM2.5−10 are spread out from north to southwest. Based on this analysis, the concentrations of PM2.5, PM2.5−10, and metal elements met air quality standards.