We have a website with a large amount of inline svg charts made with c3.js.

Is there a best practice how to embed them user- (links effects on hover etc.) and search engine (indexable in image search)- friendly at the same time?

Something like a .png fallback that is indexable but an inline svg for user-friendliness?

  • 1
    What is your goal for SEO friendliness? Do you want your images to contribute to the rankings of your pages or do you want the images themselves to rank well in image search? Nov 19, 2021 at 13:26
  • 1
    We have thousands of pages where the charts are the main content. If Google can't interpret the inline svg these pages might be considered "thin content" and won't rank well. We would also like the images to rank in image search for additional traffic. They should be very competitive as we are the only provider of these statistics without hiding them behind a paywall. However, we would love for our users to retain the functionality of animations, links etc. in the svg.
    – BeDo
    Nov 19, 2021 at 16:41

1 Answer 1


Even if Google can interpret the SVG, the contents may too thin to rank well.

I created a similar site focused on charts and graphs, each on their own page and never got significant search engine traffic to it. Most of my charts were based on Highcharts JS, but some of my charts were PNG or JPEG images. It didn't seem to make much difference. Google seems to like more text on pages. My site had at most a few dozen unique words per page and most of the content was the graphed data.

  • Hi Stephan, thanks for your input! We generate Text from the graphs automatically. It works quite ok. A good comparison (we have another topic) would be a stock market site with generated text like "The Stock price for (insert Stock name) is (insert price) ...". Maybe that could work for your age as well :)? Now we would like the chart and the text to rank well together and the chart in image search while maintaining user-friendliness (svg chart animations).
    – BeDo
    Nov 22, 2021 at 15:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.