Filmtopp - ny webb med fokus på SEO & prestanda - Limetta Digitalbyrå
Client case

Filmtopp – never ending stories

Filmtopp is one of Sweden's largest websites for reviews and news about films and TV series. What once started as a hobby project for the team behind Filmtopp had long since outgrown its WordPress outfit when they contacted us at Limetta. Filmtopp was in need of an entirely new editorial platform with a new design.

Filmtopp isn't the first website Limetta has built about films and series. Streamly is a service that aggregates content from all streaming services in one place, and it was probably our experience building Streamly that led to us being commissioned to build the new Filmtopp.

The Challenge

Just because you change design and technology doesn't mean you should change the content. Filmtopp is a treasure trove full of rated film reviews that stretch back several years, and there is great value in preserving them. Therefore the assignment was to restructure, redesign and replace all old technology, while keeping virtually all editorial content.

One problem Filmtopp had with its previous solution was the rigid categorization of articles that results from a traditional CMS structure. An article can be just as relevant under the category "Review" as under "Horror". But from an SEO perspective, content should never appear twice, because Google penalizes what it calls duplicate content

The solution was to put all articles in a flat database, without its own hierarchy or categories. The articles are then given a set of attributes, such as genre, article type, actors, director, streaming service, etc. An analogy was that we let the fish loose in a pond and then cast different nets to catch the right fish. The net in our case is the website navigation which, by querying the database with a set of attributes, returns exactly the articles being requested. In this way we have decoupled the navigation from the structure and avoid the problem of duplicate content

Focus on SEO and performance

Having high-quality content is only one component of getting many visitors to your website. The content must also load quickly, be mobile-friendly and be search engine optimized so that it is picked up, indexed and ranked highly by Google and other search engines. That’s why we put together a mix of techniques that all aim to contribute to this goal.

Azure Cognitive Search

By placing all editorial content in a database in the cloud service Azure Cognitive Search, we gained both a lightning-fast searchable index of all content and advanced features for working efficiently with caching, which is a must when you want extreme performance.

You might instinctively think you’d only use this type of search technology to build dedicated search services, but the range of uses is much broader than that. We used Azure Cognitive Search for all handling of editorial content. For example, we could segment and select content in a very flexible way, which is essential when you have content as extensive as Filmtopp. The site contains many different list pages where content is listed by parameters such as genre (horror, action, drama), format (reviews, news, interviews) or source (Netflix, HBO, Amazon, SVT). But of course it also has a great search function

ImgIx - serves images lightning fast

Filmtopp contains a lot of images. A lot of images means a lot of data to load, and a lot of data traditionally means long loading times. We didn't want that. Therefore we integrated a CDN solution (Content Delivery Network) specially built for images called ImgIx. Besides their cloud-based solution with a worldwide network of servers that can deliver image data quickly, they also offer features for transforming, optimizing and caching images. We used all of this on Filmtopp.

Sometimes the results were so astonishingly good that we were left speechless. A large image that previously could take 4 seconds to load now loaded in 0.4 seconds with the same size and image quality. But just because it's an existing service doesn't mean it's plug-and-play. We had to experiment to find which combinations of parameters gave the best results. For example, overly aggressive caching can cause content that needs updating not to be updated in time, while too little caching has negative consequences for performance.

Structured data in JSON-LD format

Structured data is a form of metadata that is added to the code on web pages. It isn't visible to visitors, but a search engine finds it and uses it to get a better picture of the page's content and to present slightly richer information in its search results.

JSON-LD stands for JSON Link Description and is a modern format for that type of metadata. The content that was most important to describe for the search engines indexing Filmtopp was reviews. On the one hand, the reviews contain a lot of structured data to convey, and on the other, they are the heart of Filmtopp's operation.

This is a screenshot from Google showing how they use the structured data we provide them to enrich the search results. Stars indicate the rating the film received in the review, you can see who wrote it and a short description. Looking in the source code you can see far more information, e.g. when the review was published, which language it is written in, the responsible publisher and images associated with the film. The images appear if you do an image search with the same information on Google

So that Google can place the film being reviewed in its "semantic universe" we also tell the search engine that this film (Bait) is the same film found at https://www.imdb.com/title/tt9652782/. That way Google can link the film to the review and thereby increase the chances that the review appears in the search results for Swedish users interested in the film

Ads

Filmtopp doesn't charge for its content; it's entirely financed by ads. No ad revenue, no reviews. That makes the ad solution extra important

Above all, social media has taught users that it's convenient to scroll to new content instead of clicking. As you near the end of a page new content loads to consume. We've implemented this way of serving users with content on Filmtopp — just keep scrolling and reading. However, it can cause problems for ad-funded websites if it's not implemented correctly. Ad solutions are built on the concept of page loads, and if you have a single long stream of content you're effectively staying on the same page even though it's very long and pulls its content from several different articles

The solution to this is a combination of different activities all aimed at meeting the ad system's requirements while still giving users the convenient scrolling feature. When one article ends and a new one loads we change the URL in the browser, send a message about this to Google Analytics (visit statistics), and check whether there are new ads to load and display. In this way we've satisfied both users' and advertisers' requirements

 

Visit Filmtopp


Would you like to know more about how we can help you?


Get in touch with us and we'll tell you more.

Contact us