We'd generally recommend using an agency. Although there is a cost it's worth paying in our experience. TECO offices can be fairly bureaucratic and the information listed on the websites are not clear and quite often out of date. The opening hours can be inconvenient if you work and you also have to travel to your nearest office, which could be a long distance in some areas. An agency has experience in dealing with this and it will save you much time and stress, especially if it's your first visa application. If you do decide to use an agency please make sure to do your research and find an experienced one who is recommended by others. The more experienced the better. Visa rules and regulations change often so a company who knows the deal day in day out, is much easier to trust.