In this work, we report the preparation, characterization, comparison and luminescence mechanisms of Eu2+-doped and Eu2+,Dy3+-co-doped Ba2MgSi2O7 (BMSO) phosphors. Prepared phosphors were synthesized via a high temperature solid-state reaction method. All prepared phosphors appeared white. The phase structure, particle size, and elemental analysis were analyzed using X-ray diffraction (XRD), transmission electron microscopy (TEM) and energy-dispersive X-ray (EDX) analysis. The luminescence properties of the phosphors were investigated by thermoluminescence (TL) and photoluminescence (PL). The PL excitation and emission spectra of Ba2MgSi2O7:Eu2+ showed the peak to be around 381 nm and 490 nm respectively. The PL excitation spectrum of Ba2MgSi2O7:Eu2+Dy3+ showed the peak to be around 341 nm and 388 nm, and the emission spectrum had a broad band around 488 nm. These emissions originated from the 4f(6) 5d(1) to 4f(7) transition of Eu2+. TL analysis revealed that the maximum TL intensity was found at 5 mol% of Eu2+ doping in Ba2MgSi2O7 phosphors after 15 min of ultraviolet (UV) light exposure. TL intensity was increased when Dy3+ ions were co-doped in Ba2MgSi2O7:Eu2+ and maximum TL intensity was observed for 2 mol% of Dy3+. TL emission spectra of Ba1.95MgSi2O7:0.05Eu(2+) and Ba1.93MgSi2O7:0.05Eu(2+),0.02Dy(3+) phosphors were found at 500 nm. TL intensity increased with UV exposure time up to 15 min, then decreased for the higher UV radiation dose for both Eu doping and Eu, Dy co-doping. The trap depths were calculated to be 0.54 eV for Ba1.95MgSi2O7:0.05Eu(2+) and 0.54 eV and 0.75 eV for Ba1.93MgSi2O7:0.05Eu(2+),0.02Dy(3+) phosphors. It was observed that co-doping with small amounts of Dy3+ enhanced the thermoluminescence properties of Ba2MgSi2O7 phosphor. Copyright (C) 2016 John Wiley & Sons, Ltd. [Correction added on 5 April 2016, after first online publication: The following parts of the abstract have been edited for consistency. '4f65d1' has been corrected to '4f(6) 5d(1)', '4f7' has been corrected to '4f7', 'Ba1.95' has been corrected to 'Ba1.95' and 'Ba1.93' has been corrected to 'Ba1.93' respectively.]