This page is not available in every language. Missing translations are disabled in the language selector.

Quick reference

Rails meta-tags Gem Cheatsheet

A quick reference guide for the Ruby on Rails meta-tags gem: setting dynamic titles, Open Graph, Twitter Cards, canonical URLs, and view helpers.

· Published

meta-tags is a Ruby on Rails gem that makes managing SEO meta tags, Open Graph properties, and Twitter Cards clean and maintainable.

Installation

Add to your Gemfile:

gem 'meta-tags'

Generate the configuration initializer:

rails generate meta_tags:install

Setting Page Titles

Use set_meta_tags in controllers or views:

# Basic title
set_meta_tags title: 'Member Login'
# => <title>Member Login</title>

# Title with site prefix
set_meta_tags site: 'My SaaS', title: 'Dashboard'
# => <title>My SaaS | Dashboard</title>

# Reversed title with custom separator
set_meta_tags(
  site: 'My SaaS',
  title: 'Dashboard',
  reverse: true,
  separator: '&middot;'.html_safe
)
# => <title>Dashboard · My SaaS</title>

Setting SEO & Social Meta Tags

set_meta_tags(
  site: 'My Store',
  title: 'Organic Green Tea',
  description: 'Pure, ceremonial-grade organic Japanese green tea.',
  keywords: %w[green tea organic matcha],
  canonical: 'https://example.com/products/green-tea',
  icon: '/favicon.ico',
  noindex: false,
  nofollow: false,
  og: {
    title: 'Organic Green Tea',
    type: 'website',
    url: 'https://example.com/products/green-tea',
    image: 'https://example.com/images/tea.jpg'
  },
  twitter: {
    card: 'summary_large_image',
    site: '@mystore',
    title: 'Organic Green Tea'
  }
)

View Helpers

Rendering in Layout

In app/views/layouts/application.html.erb:

<head>
  <%= display_meta_tags site: 'Default Site Title' %>
</head>

Setting Directly in Template Views

<% title 'Account Settings' %>
<% description 'Manage your billing and notification preferences.' %>

<h1><%= current_title %></h1>

References

Related topics