Free Adult Website Compliance Check

Enter a domain and this free checker will scan the public homepage for common front-page signals: adult rating metadata, age-gate wording, privacy/terms links, consent language, contact paths, and visible image concerns.

Scan a Domain

Enter the homepage URL for a public website. The scan fetches the page from this server and checks the page source and response headers. This is a practical self-check, not a legal review.

Download the free WordPress Plugin

Beginners can install the age gate directly from WordPress. Download the ZIP, then go to Plugins > Add New > Upload Plugin in the WordPress dashboard. Advanced users can apply the code from below.

Adult Age Gate Plugin

Adds RTA/rating metadata and a simple visitor age confirmation gate.

Download Plugin ZIP

Header Rating Tags

Add adult-content rating metadata to every page that contains age-restricted content. Google documents both a simple adult rating tag and the RTA value for SafeSearch signals; RTA describes its label as free and voluntary.

<!-- Add inside the <head> of adult-content pages -->
<meta name="rating" content="adult">
<meta name="RATING" content="RTA-5042-1996-1400-1577-RTA">
<meta name="robots" content="index, follow, max-image-preview:large">

Helpful references: RTA label instructions and Google supported meta tags.

HTML Age Gate

For a plain HTML website, place this before the closing </body> tag. It stores a local browser confirmation for 30 days.

<div id="ageGate" class="age-gate" hidden>
  <div class="age-gate__box">
    <h2>Adults Only</h2>
    <p>You must be 18 or older, or the legal age in your location, to enter this website.</p>
    <button id="ageConfirm" type="button">I am 18 or older</button>
    <a href="https://www.google.com/">Leave</a>
  </div>
</div>

<style>
.age-gate{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;background:rgba(0,0,0,.88);color:#fff;padding:20px}
.age-gate__box{max-width:460px;background:#131f28;padding:28px;border-radius:8px;text-align:center}
.age-gate button{background:#9b1c31;color:#fff;border:0;border-radius:8px;padding:12px 18px;font-weight:700}
.age-gate a{display:inline-block;margin-left:12px;color:#ff9d00}
</style>

<script>
(function () {
  var key = "adult_age_verified_until";
  var until = Number(localStorage.getItem(key) || 0);
  var gate = document.getElementById("ageGate");
  if (Date.now() > until) gate.hidden = false;
  document.getElementById("ageConfirm").addEventListener("click", function () {
    localStorage.setItem(key, String(Date.now() + 30 * 24 * 60 * 60 * 1000));
    gate.hidden = true;
  });
}());
</script>

PHP Include Version

For PHP websites, save this as age-gate.php and include it in your template footer.

<?php
// footer.php or your shared layout file
include __DIR__ . '/age-gate.php';
?>

<!-- age-gate.php -->
<?php
if (isset($_POST['adult_age_confirm'])) {
  setcookie('adult_age_verified', 'yes', time() + 60 * 60 * 24 * 30, '/', '', true, true);
  header('Location: ' . strtok($_SERVER['REQUEST_URI'], '?'));
  exit;
}
?>

<?php if (empty($_COOKIE['adult_age_verified'])): ?>
  <div id="ageGate" class="age-gate">
    <div class="age-gate__box">
      <h2>Adults Only</h2>
      <p>You must be 18 or older, or the legal age in your location, to enter this website.</p>
      <form method="post">
        <button name="adult_age_confirm" value="yes" type="submit">I am 18 or older</button>
        <a href="https://www.google.com/">Leave</a>
      </form>
    </div>
  </div>
<?php endif; ?>

WordPress Plugin Code

The downloadable ZIP above includes this plugin code. Advanced users can also create wp-content/plugins/adult-age-gate/adult-age-gate.php, paste this code, then activate it in WordPress.

<?php
/**
 * Plugin Name: Adult Age Gate
 * Description: Adds adult rating meta tags and a simple age confirmation gate.
 * Version: 1.0.0
 */

add_action('wp_head', function () {
  echo '<meta name="rating" content="adult">' . "\n";
  echo '<meta name="RATING" content="RTA-5042-1996-1400-1577-RTA">' . "\n";
});

add_action('wp_footer', function () {
  if (isset($_COOKIE['adult_age_verified'])) return;
  ?>
  <div id="ageGate" style="position:fixed;inset:0;z-index:99999;display:grid;place-items:center;background:rgba(0,0,0,.88);color:#fff;padding:20px">
    <div style="max-width:460px;background:#131f28;padding:28px;border-radius:8px;text-align:center">
      <h2>Adults Only</h2>
      <p>You must be 18 or older, or the legal age in your location, to enter this website.</p>
      <button id="adultAgeConfirm" type="button" style="background:#9b1c31;color:#fff;border:0;border-radius:8px;padding:12px 18px;font-weight:700">I am 18 or older</button>
      <a href="https://www.google.com/" style="display:inline-block;margin-left:12px;color:#ff9d00">Leave</a>
    </div>
  </div>
  <script>
  document.getElementById('adultAgeConfirm').addEventListener('click', function () {
    document.cookie = 'adult_age_verified=yes; max-age=2592000; path=/; SameSite=Lax';
    document.getElementById('ageGate').remove();
  });
  </script>
  <?php
});

Front Page Checklist

Adult websites should make the basics easy to find before visitors go deeper into the site.

  • Visible age notice or age gate before adult content is shown.
  • Adult rating metadata in the page header for adult-content pages.
  • Terms of Service, Privacy Policy, copyright/DMCA contact, and support/contact links.
  • Consent, performer records, model releases, and rights documentation maintained by the publisher.
  • Clear complaint, abuse, and removal request contact path.
  • Payment processor, platform, and jurisdiction requirements reviewed by the site owner.
  • No illegal, non-consensual, stolen, abusive, deceptive, or harmful content.
  • Separate adult content from any non-adult brand pages or public landing pages where possible.