Congestion in public places is one of the major problems in public transportation systems and causes a high level of discomfort for the commuters. Traditionally, overcrowding is detected by manually monitoring and analyzing the video streams from the surveillance cameras, which might lead to errors due to limited human activity. On the other hand, current machine learning models for automatic congestion detection require a massive amount of labeled data to train the network. These models suffer from the over-fitting problem and cannot be generalized to novel scenes. First, we propose a novel synthetic dataset for congestion detection in public places to address these problems. Secondly, we propose a Bidirectional Long-short-term-memory (Bi-LSTM) model that exploits synthetic datasets to boost the performance of congestion detection in the wild. We adopt a domain adaptation strategy to bridge the gap between the real and synthetic data by pre-train the model on the synthetic dataset and then fine-tuning the model on real data. From experiment results, we observe that the proposed framework achieves a significant performance boost on the real datasets after training on the synthetic dataset.