SemEval-2019 Task 6 requires us to identify and categorise offensive languagein social media. In this paper we will describe the process we took to tacklethis challenge. Our process is heavily inspired by Sosa (2017)  where heproposed CNN-LSTM and LSTM-CNN models to conduct twitter sentiment analysis. Wedecided to follow his approach as well as further his work by testing outdifferent variations of RNN models with CNN. Specifically, we have divided thechallenge into two parts: data processing and sampling and choosing the optimaldeep learning architecture. In preprocessing, we experimented with twotechniques, SMOTE and Class Weights to counter the imbalance between classes.Once we are happy with the quality of our input data, we proceed to choosingthe optimal deep learning architecture for this task. Given the quality andquantity of data we have been given, we found that the addition of CNN layerprovides very little to no additional improvement to our model's performanceand sometimes even worsen our F1-score. In the end, the deep learningarchitecture that gives us the highest macro F1-score is a simple BiLSTM-CNN.