To naturalise as a German citizen you must pass the Einbürgerungstest: a multiple-choice test of 33 questions, drawn from an official catalogue of 300 general questions plus 10 questions for each of the 16 federal states (Bundesländer). 30 questions in your test are general and 3 are about the state where you are registered. You have 60 minutes and need 17 correct answers to pass. The same catalogue is used for the Leben in Deutschland test at the end of an integration course.
This site is a free trainer for that test, with no account and no paywall. All 460 official questions are included, in German as in the real exam, each with the correct answer, a short explanation in English and an English translation of the question and every option — tap any German word for a translation.
It works offline once loaded and can be installed on your phone like an app. Your progress is stored on your device only.
Ten of the questions are specific to each Bundesland (its flag, coat of arms, parliament, elections). 3 of them will be in your test: