The bandgap of the perovskites can be changed by chemical structure of the perovskite materials as explained by Farshad.
The more amenable method to tune the bandgap of the perovskite material is by changing the grain size. As the grain size decreases the bandgap increases and vice verse. This is the consequence of the charge carriers confinement.
My understanding about your question is how the modified organic units on the perovskite core can change the band gap of perovskite materials as active materials for solar cells. The mechanism of the band gap changing is that the variations of electron donor and acceptor units within organic molecule design provide different energy levels (HOMO and LUMO). Therefore, the band gap of perovskite active materials can be tuned through modifying organic units. Hope it helps.
Band-gap tuning in hybrid halide perovskites can be done by modifying B-X bond. For example, CH3NH3PbI3 and CH3NH3SnI3 have a direct band-gap of 1.55 eV and 1.17 eV, so you can mix Pb with Sn to tune band-gap in this range. In addition, to increase band-gap up to 2.17, you can mix I with Br. See the following articles for more information.
Article ChemInform Abstract: Anomalous Band Gap Behavior in Mixed Sn...
Article Exploring the Stability of Novel Wide Bandgap Perovskites by...
The bandgap of the perovskites can be changed by chemical structure of the perovskite materials as explained by Farshad.
The more amenable method to tune the bandgap of the perovskite material is by changing the grain size. As the grain size decreases the bandgap increases and vice verse. This is the consequence of the charge carriers confinement.