Select Page

As a search engine optimiser you will come across programming every day in one way or another and while it isn’t a must have skill for a lot of roles, I believe it is essential to be able to program and have a good understanding of programming in general.

Some SEO roles require you to get hands on with the code and make the changes straight away, where as within other roles the actual hands on work is completed by the technical team/department.

Either way here are a few reasons why I believe programming is an essential skill to have.

Improve Working Relationship with Developers

If you can speak the language of the developers then it goes a long way to building trust with them. It is important for developers to feel that the work they are doing is contributing to the wider business objectives, so by being able to speak in technical terms means you can bridge that gap between business requirements and technical implementations. I am not saying everyone needs to be an expert programmer or website developer but it is important to understand how things work.

If you don’t understand how things work then how can you go about making things better?

Working on several large scale multi-national travel websites has taught me that changes to the site are much easier to make once you understand how the site has been built. If you want to change the H1 or Meta Title on a selection of pages, then if you understand that the pages are built based on templates then this can help you devise a solution with the development team which allows you to make the required changes. Possibly some kind of mini content management system would be useful?

Understanding how to program also means that you don’t go asking for changes that are either impossible to achieve, that take a long time to implement and provide little or no return on investment.

For technical people, getting things right first time and developing code properly is what drives them. For non-technical people, they are at the opposite end of the spectrum and are only interested in the end product. To achieve a successful product it is important for all parties to work together and ensure that code is developed in a robust way and in a way that meets the original specification.

Whether you lean a bit of Java, PHP, C# or ASP.Net, it doesn’t matter since it gives you an understanding of how things work. It will help you have a real conversation about a technical problem and enable you to understand why seemingly simple changes can actually take a few days work. On the plus side, learning to program is fun too! :-)

Ability to use Macros in Excel

If you can program, then you will soon be able to pick up the programming language in Excel, VBA (Visual Basic for Applications). With this you can quickly develop tools which will make your job and your life much easier by automating the regular tasks or pulling in the required information quickly.

There are alternatives to using Macros in Excel, such as using Microsoft Access, but my preferred method is still traditional programming as it offers much more flexibility since you can integrate this information within a database.


Website Scraping

As a search engine optimiser I have no doubt that at some point in your career you have needed to scrape a lot of information from a certain website. Weather that be for price comparison, scraping data from the HTML or just playing around for fun. Website scraping can be done at a basic level using tools such as SEO Tools for Excel, but if you want the more juicy data then you really want to be able to put this into a database and either use on your own website or use it for further research.

To Spot The Rodney McKay

If you don’t anything about programming then when you get told by the technical team that something can’t be done because “the CSS file is located on an external server” you will have no knowledge to be able to question what has been said. You will find a Rodney McKay in every organisation who will say everything is impossible to fix, so they seem like a savior when they solve the problem that didn’t really exist in the first place!

Knowing your onions and being able to question things is extremely important.


Using APIs For Extra Data

There is a lot of data analysis within the SEO industry and some of this can include pulling in data from external sources such as Open Site Explorer via their API, Application Programming Interface. Some other APIs that you will no doubt use at some point will be the free Google APIs.

Whether that is using the KML API which is used for creating cool Google Maps visualisations or using the YouTube API to automatically post new content to YouTube when you add it to your website.

APIs can be an extremely powerful tool to use when joining bits of information together and connecting online applications and will certainly help your normal SEO efforts by taking the manual work out of things.



Take what you will from this long winded rant about programming, but I can strongly suggest learning to program and learning more about how ecommerce websites work in general. All of this knowledge is never lost and it will help you bridge the gap between marketing, external demand (ie search volumes on Google) and the technical team.


3 thoughts on “Why Programming Is An Essential SEO Skill”

  1. Like the post and examples; I think it’s a fair point and I agree in the main. Essential is a strong word; there are a lot of areas of SEO where this isn’t really the case, but at the same time I think a lot of SEO’s who shy away from the technical aspects could really improve what they can offer their company or clients by learning to code.

    One of my pet hates at the moment is the whole mobile same url versus subdomain versus sub folder argument. I see so many SEO’s who think for a large e-commerce website, it’s as simple as changing a CSS style sheet to make it mobile friendly (hey, if it’s this easy for WordPress, it must be this easy for everything else!). This leads to mindless comments like “if you don’t serve your mobile site on the same URL as your main site, you should sack your devs”.

    As I guy with technical knowledge, I understand this is of course bollocks; I see e-commerce sites with masses of extra conditional statements, huge code bloat, div hiding and so on just so the mobile site can be run from the same URL. A lot of the time it’s better on so many development and technical levels to run the mobile site from a subdomain/folder (just ask eBay, Next, Argos etc) but a non-tech savvy SEO just wouldn’t see this – it’s so different from the simple task of setting up a mobile version of a blog or content site.

    That’s just one example that’s current for me at the moment, but there are a lot of other cases too where tech knowledge is useful.

    Just to finish, I thought you might like to know that you do have quite a well known ally in this line of thinking! I was at SES London 2012, and one of my favourite quotes was Dave Naylor saying in a session “If you want to be an SEO, learn to code”. So you’re not alone :)

  2. I disagree. I can’t code worth a damn, but I do think I’m rather competent at this SEO malarkey.

    I think what you really mean is that a certain level of technical understanding is essential. I would agree with that. I can’t code, but I have a solid understanding of how the internet works, how websites work, and how HTML works. Those are required aspects of being an effective SEO.

    The ability to code is a ‘nice-to-have’ extra in my book. It helps, but it’s not necessary. Then again, as a non-coder, I would say that. :)

    1. As a coder, I would say it is essential :-p

      But as you say, actually being able to do the code yourself is more of a nice-to-have – as long as there is the deeper understanding of how websites work, how the internet works, understanding HTML. These types of skills are not always as common as one would hope.

      What I have found is that having this deeper understanding of ‘how stuff works’ actually helps things get done easier, as it helps to understand technical difficulties with implementing SEO recommendations then work through the solutions together with people to come to an amicable solution.

      People may not be able to do it their self (hey, I can read PHP & ASP and understand what is going on if forced but I wouldn’t have a clue where to begin writing it – my background is Java – and I also have no desire to learn those either!) but at least being able to understand things at a deeper level helps an awful lot.

      Also having the ability to ‘muck in’ can help get some of the smaller SEO tasks through which people often don’t value. E.g. messed up meta titles, missing H1s, fixing broken canonicals and removing the line from robots.txt which is telling Google to go away. In larger organisations often the technically smaller items are often pushed back even with huge amounts of evidence to back up how important they actually are, as there is always something more important. I have yet to come across a company (which isn’t an SEO company!) where SEO is prioritised above everything else.

The following two tabs change content below.

Michael Cropper

Founder & Managing Director at Contrado Digital Ltd
Michael founded Contrado Digital in 2013. He has experience working with national and multi-national brands in a wide range of industries, helping them achieve awesome results. Michael regularly speaks at local universities and industry events while keeping up with the latest trends in the digital industry.