1. A computer implemented method for user analysis, comprising: providing an interaction engine; using said interaction engine to capture an interaction between at least one agent and a user; providing an analysis engine; classifying, with said analysis engine, said interaction into one or more stages of said interaction; said analysis engine further implementing an algorithm which labels sequences of text into said stages; said analysis engine further implementing a greedy sequence classifier algorithm that uses a stage predicted for a previous chat line to make a prediction for the stage of a current chat line to classify an entire conversation into stages; said analysis engine identifying the stage of interaction, based on the classification predicted by the analysis engine; and based on said classifying, providing recommendations to said agent to improve the user experience in the interaction.