Cloud & DevOps

Case study: how Plecto migrated its cloud-to-cloud platform from AWS to Scaleway

by Jérôme Galais 17 November 2025

Migrating a full production platform from AWS to Scaleway is always an ambitious bet. For Plecto, a European scale-up specializing in performance tracking and team engagement, the project was not only a technical challenge; it was also a strategic opportunity to modernize the tech stack and regain control over cloud costs. Supported by Scaleway and Kaliop, the team successfully executed a cloud-to-cloud migration that blended FinOps discipline with a broader DevOps transformation.

The starting point: an overwhelming AWS bill

Historically hosted on AWS, Plecto’s platform relied on managed services such as Kinesis and RDS, virtual machines for Elasticsearch, and an application layer deployed with minimal automation. As the user base grew rapidly, so did the costs: database services represented a major expense, and some components continued generating charges despite having zero usage.

Beyond the financial burden, the engineering team struggled with manual deployment processes and a lack of infrastructure as code (IaC), limiting scalability and increasing technical debt.

For Plecto, optimizing cloud investments through a FinOps approach, while transforming the architecture to support future growth, had become essential.

The role of Scaleway and the decision to migrate

In late 2024, Plecto began discussions with Scaleway. The European cloud provider offered a mix of IaaS and PaaS services, a competitive consumption-based model, and mechanisms to limit double billing during the transition. Scaleway quickly brought Kaliop into the project to design and execute the migration.
The initial idea of gradually migrating customer accounts was abandoned: technical interdependencies made it too risky. The only viable approach was a full cutover, preceded by extensive preparation to secure each step.

Thorough preparation followed by a final switch

The first phase focused on modernizing the technical foundation. The real-time data pipeline was migrated from Kinesis to Kafka through a temporary dual-publishing setup, enabling performance validation before switching traffic entirely.

In parallel, the architecture was redesigned around Kubernetes. Deployments were automated via GitHub, using Scaleway registries for Docker images and ArgoCD for continuous deployment. This shift to IaC brought improved scalability and resilience while reducing reliance on manual operations.

The complete migration was executed over a planned weekend. Databases, Elasticsearch, Redis, and the rest of the application were switched in a single coordinated operation, following intensive synchronization and recovery testing. Service disruption stayed within the expected window, ensuring a fast and lossless recovery.

Post-migration optimizations

Migration was not the end of the journey. A series of optimizations followed in the weeks thereafter. Kafka message compression reduced data volume by a factor of three to four. In parallel, parts of the application code were improved, lowering message throughput and enhancing overall performance.

On the monitoring side, a full observability stack was deployed: Thanos for long-term metrics storage, Loki for logs, and Grafana for real-time visualization. Developers now benefit from end-to-end visibility, an essential asset for anticipating issues and fine-tuning the platform through dashboards and targeted alerting.

From a FinOps perspective, the migration was initially performed with intentionally generous resource sizing to minimize risk. Once monitoring and optimizations kicked in, the infrastructure was progressively right-sized, ultimately cutting total cloud costs by half compared to AWS.

Lessons learned: what Plecto takes away from this migration

Plecto’s experience highlights several valuable insights:

  • A preliminary audit is indispensable: it uncovers hidden interdependencies and helps refine the strategy.
  • Validating critical components before the switch is essential: the dual Kinesis/Kafka setup played a decisive role.
  • Migrating means transforming: moving to containers and Kubernetes enabled true infrastructure industrialization.
  • A one-shot migration must be orchestrated like a surgical intervention: success relies on synchronization tests and robust fallback scenarios.
  • Continuous optimization is key: most performance and stability gains occur after the migration itself.

By migrating from AWS to Scaleway, Plecto cut infrastructure costs by half while improving both performance and reliability. The platform now runs on a modernized architecture built on Kubernetes, infrastructure as code, and a fully integrated observability stack.

This project demonstrates that a cloud-to-cloud migration is far more than a hosting change; it is an opportunity to rethink one’s architecture, embrace DevOps and FinOps best practices, and build a more resilient and scalable technical foundation.

Jérôme Galais

Jérôme Galais

A DevOps and cloud technical expert and a passionate tech lead, I work in complex and mission-critical environments to guide teams, design, challenge, and evolve architectures, making them reliable, scalable, and secure.

Comments

Add a comment

Your comment will be moderated by our administrators

Have a project? Our teams are here to answer your questions

Contact us