Ranklog – SaaS-Plattform für automatisiertes Google-Ranking-Tracking
Aufgabenstellung
Agenturen und Unternehmen, die ihre Google.de-Sichtbarkeit im Blick behalten wollen, stehen vor einem praktischen Problem: manuelle Ranking-Checks sind zeitaufwendig, fehleranfällig und lassen sich ab einer gewissen Keyword-Menge kaum noch sinnvoll skalieren. Der Auftrag war die Entwicklung einer mandantenfähigen SaaS-Plattform, die diesen Prozess vollständig automatisiert – mit getrennten Datenbereichen pro Kunde, flexiblen Paketen und täglichem Ranking-Check ohne manuellen Eingriff.
Umsetzung
Das Herzstück der Anwendung ist eine strikte Multi-Tenant-Architektur auf Basis von Symfony 8.0. Alle Datenbankabfragen laufen über eine abstrakte TenantAwareRepository-Schicht, die den authentifizierten Mandanten automatisch in jede Abfrage einbettet – ein versehentlicher Datenzugriff über Mandantengrenzen hinweg ist damit strukturell ausgeschlossen.
Die Ranking-Daten werden über die Serper.dev-API abgerufen. Pro Keyword werden bis zu fünf Ergebnisseiten parallel angefragt, um auch hintere Positionen zuverlässig zu erfassen. Eine wichtige Optimierung betrifft Keywords, die von mehreren Mandanten gleichzeitig beobachtet werden: Statt die API mehrfach mit identischen Anfragen zu belasten, wird jede einzigartige Phrase-Domain-Kombination nur einmal abgefragt und das Ergebnis anschließend für alle betroffenen Mandanten gespeichert.
Ein täglicher Cron-Job übernimmt die reguläre Prüfung aller aktiven Keywords. Damit Nutzer bei neu angelegten Keywords nicht bis zum nächsten Nacht-Lauf warten müssen, läuft parallel ein zweiter Prozess im Zwei-Minuten-Takt: Er erkennt Keywords, die seit dem letzten Hauptlauf hinzugekommen sind, und prüft diese sofort. Im Frontend signalisiert ein animierter Spinner, dass ein Ergebnis aussteht – er verschwindet automatisch, sobald das Ranking per JavaScript-Polling eingetroffen ist.
Das Dashboard setzt auf Tabler (Bootstrap 5) mit DataTables und Chart.js-Verlaufsgrafiken, bei denen die Positionsachse bewusst invertiert ist, sodass eine Verbesserung im Diagramm nach oben zeigt. Für alle öffentlichen Seiten – Landing Page, Login, Registrierung und Passwort-Reset – wurde Tailwind CSS eingesetzt, um eine klare visuelle Trennung zwischen dem Marketing-Auftritt und der Anwendung selbst herzustellen. Die Abonnement-Verwaltung läuft über Stripe, das Rollen-Konzept unterscheidet zwischen Endnutzern, Teamadmins und einem Super-Admin, der sich bei Bedarf in jeden Account einloggen kann, um den Support zu vereinfachen.
Die Qualitätssicherung umfasst funktionale Tests mit PHPUnit 13 und dem Symfony PHPUnit Bridge. Die Serper.dev-Integration wird dabei gegen aufgezeichnete API-Responses als Mock-Fixtures getestet, sodass die Kernlogik – Positionsberechnung, Seitenoffset, Domain-Normalisierung und Fehlerbehandlung – vollständig ohne echte API-Aufrufe verifiziert werden kann.
Ergebnis
Ranklog ist eine produktionsreife Plattform, über die mehrere Kunden unabhängig voneinander ihre Google-Sichtbarkeit täglich tracken. Die Kombination aus Nacht-Cron und sofortiger Zwei-Minuten-Prüfung sorgt dafür, dass Nutzer jederzeit aktuelle Daten sehen – unabhängig davon, wann sie ein neues Keyword anlegen.