Sachverhalt: A. Die Anklage wirft X._ vor, verschiedene Versicherungen sowie Sozialversicherungsbehörden betrogen zu haben. B. Das Kantonsgericht St. Gallen verurteilte X._ am 4. September 2012 zweitinstanzlich wegen mehrfachen, teilweise gewerbsmässigen Betrugs, Urkundenfälschung und der Entziehung der Beitragspflicht gegenüber einer beruflichen Vorsorgeeinrichtung zu einer bedingten Freiheitsstrafe von 15 Monaten bei einer Probezeit von zwei Jahren. Von den Vorwürfen der Brandstiftung und der fahrlässigen Verursachung einer Feuersbrunst sowie des gewerbsmässigen Betrugs zum Nachteil verschiedener Versicherungen sprach es sie frei. C. X._ führt Beschwerde in Strafsachen. Sie beantragt, das angefochtene Urteil sei aufzuheben, und sie sei vom Vorwurf des mehrfachen, teilweise gewerbsmässigen Betrugs und der Urkundenfälschung freizusprechen. Die Sache sei zur neuen Festsetzung des Strafmasses sowie der Kosten- und Entschädigungsfolgen an die Vorinstanz zurückzuweisen. Für die zu Unrecht verfügte Untersuchungshaft sei ihr eine angemessene Entschädigung und Genugtuung auszurichten. Eventualiter sei das Strafmass wegen Verletzung des Beschleunigungsgebots zu reduzieren.