webfilteringdatabase.com
Home Find Your Solution
Features
Domain Categorization API Real-Time Classification 58 Filtering Categories Offline Database (120M) SaaS App Hostnames Mobile App Database Managed DNS Filter Content Classification
Industries
K-12 Schools Corporate Healthcare Government ISPs
Tools
Domain Lookup Bulk Categorization Category Explorer
Resources
Pricing API Documentation Login / Sign Up
K-12 Education

K-12 Web Filtering for Schools

Keep students safe online with CIPA-compliant web filtering. Classify and control access to 120 million domains across 58 content categories to ensure age-appropriate internet use in every classroom.

Full filtering solution · used by US public libraries and schools

We run the web filter for your library or school

Set one DNS address on your router and every device is filtered: CIPA categories blocked, a staff PIN for adult research, and reports for your records. Nothing to install.

From $99 / month per site
See filter plansHow it works
New: K-12 AI tools policy dataBlock, allow-with-controls or allow verdicts for 11,853 AI tools, each with its reason and risk factors, ready to build into a school filter. See the K-12 AI data

Why K-12 Schools Need Web Filtering

Schools must comply with the Children's Internet Protection Act (CIPA) to maintain E-Rate funding while protecting students from age-inappropriate content across every device and network. A robust URL classification database makes this achievable at scale.

CIPA Compliant

Meet federal Children's Internet Protection Act requirements for E-Rate funding eligibility.

Age-Tiered Policies

Apply grade-appropriate filtering rules for K-5, 6-8, and 9-12 students with 58 content categories.

1:1 Device Ready

Extend filtering to take-home Chromebooks and iPads with cloud-based API classification.

120M+
Domains Classified
58
Content Categories
<10ms
API Latency
99.9%
Uptime SLA
For school IT leads

Set the rules once and let every school's network follow

Our managed DNS filter works from a single DNS address on the school router or firewall. Each school keeps its own category switches, and the district sees all of them in one dashboard.

  • Choose from 22 blocking categories per school and tune with always-allow and always-block lists.
  • Teachers can lift a block for 15, 30 or 60 minutes with a PIN, and it reverts without anyone remembering to undo it.
  • Nothing is installed on classroom machines, because the filter sits at the DNS step.
Overview screen listing every school under one account
1 dashboard
for all schools in the district
99.99%
of active websites already carry a category
120M+
domains in the data the rules read from

CIPA Compliance & E-Rate Eligibility

Meet federal requirements for student internet safety with a comprehensive URL classification database

CIPA Mandatory Filtering

CIPA requires schools to adopt and enforce an internet safety policy that blocks access to visual depictions that are obscene, contain child pornography, or are harmful to minors. Our database maps every domain to specific content categories so your filter can enforce these rules with precision and minimal over-blocking.

E-Rate Funding Protection

E-Rate provides discounts of 20% to 90% on telecommunications and internet access for schools and libraries. Districts that fail to demonstrate CIPA compliance risk losing these critical subsidies. Our URL classification data provides the auditable, category-level evidence needed to prove compliance during E-Rate program reviews.

COPPA Alignment

The Children's Online Privacy Protection Act places strict rules on the collection of personal information from children under 13. Schools acting as intermediaries for ed-tech tools must ensure students are not directed to sites that violate COPPA. Our database flags domains known to collect data from minors without proper consent mechanisms.

State-Level Requirements

Many states impose additional internet safety mandates beyond CIPA. California, Texas, New York, and Illinois each have supplemental student privacy and online safety laws. Our 58 content categories give districts the flexibility to build policies that satisfy both federal and state regulations simultaneously.

Sites students ask about

The labels behind popular school-day sites

Learning platforms and distractions get different categories, so a rule can open one and close the other. Every row is a real entry from our database.

WebsiteCategories we hold
khanacademy.orgEducation/Reference
kahoot.comEducation/Reference, Webinars/E-learning
roblox.comGaming
snapchat.comSocial Networking
chess.comGaming, Community Sites
youtube.comStreaming Media, Social Networking

Age-Appropriate Filtering Policies

A first grader and a high school senior have vastly different educational needs and maturity levels. Effective school web filtering must account for these differences. Elementary students might need access limited to a curated allowlist of educational sites, while high school students conducting AP research need broader access with targeted restrictions on dangerous content categories.

Our 58 content categories enable fine-grained, age-tiered filtering policies. Block social media for grades K-5, allow moderated access for grades 6-8, and permit most platforms for grades 9-12 with protections against adult content. Adjust categories for gaming, streaming video, weapons, drugs, and other sensitive topics based on your district's acceptable use policy.

1:1 Device Programs & Off-Campus Filtering

The rapid adoption of Chromebook and iPad 1:1 programs has transformed K-12 education, but it has also extended the school's filtering responsibility beyond the campus network. When a student takes a district-issued device home, the school remains liable for ensuring CIPA-compliant content filtering is in place. This means URL classification must happen at the device or cloud proxy level, not just at the on-premises firewall.

Our API-driven classification database integrates seamlessly with cloud-based filtering agents deployed on student devices. Every DNS request or URL visit is checked against our 120 million domain database in real time, returning a category classification that your filtering agent uses to allow or block the request. Latency stays under 10 milliseconds, so students experience no noticeable delay while browsing approved educational content.

District IT teams can manage policies centrally and push updates to all devices regardless of where they connect. Whether the student is in the school library, at a coffee shop, or at home, the same filtering policies apply consistently across every connection.

Beyond the school gate

Laptops taken home keep the same category rules

A private encrypted link applies the school's policy to devices that leave the network. It also helps where a provider redirects DNS.

Protecting Students from Online content risks

Modern web content risks targeting students go far beyond inappropriate images. Cyberbullying platforms, anonymous messaging apps, self-harm and eating disorder communities, sextortion schemes, and radicalization pipelines all present real dangers to young people. A web filtering database must classify these evolving content risks rapidly and accurately so that school networks can block access before harm occurs.

Our content classification team continuously monitors the web for new domains associated with student-targeted risks. When a new anonymous messaging platform emerges or a known cyberbullying site migrates to a fresh domain, our classification engine identifies and categorizes it within hours. Schools using our database receive these updates automatically through the API without any manual intervention from district IT staff.

The database also flags restricted content domains, unsafe content distribution sites, and credential harvesting pages that frequently target educational institutions. Schools are among the most targeted organizations for ransomware attacks, and blocking access to malicious domains is a critical layer of defense that protects both student data and district infrastructure.

K-12 Web Filtering Use Cases

Real-world scenarios where URL classification keeps students safe and schools compliant

1

Classroom Internet Access

Teachers need students to access educational resources without stumbling onto inappropriate content. A biology class researching cell division should be able to visit academic sites without triggering blocks, while searches that lead to adult content, violent imagery, or off-topic entertainment should be filtered in real time. Our 58 categories let schools allow educational and reference content while blocking everything from gambling to social media during instructional hours.

2

Library & Media Center Access

School libraries serve students of all ages and must balance open inquiry with safety. Shared workstations need robust filtering because multiple students use the same terminal throughout the day. Our classification database enables librarians to apply policies that allow research databases, digital encyclopedias, and approved media while restricting proxy sites, anonymizers, and peer-to-peer download portals that students frequently attempt to use to bypass filters.

3

Take-Home Chromebook Programs

Many districts issue Chromebooks that students carry between school and home. Without off-campus filtering, these devices become unprotected portals to the open web. Cloud-based filtering agents query our API on every URL request, applying the district's policy no matter where the device connects. Parents gain peace of mind knowing the same protections that apply at school extend to homework sessions at home.

4

BYOD & Guest Wi-Fi

Some schools allow students and staff to bring personal devices onto the network. Guest Wi-Fi networks and BYOD programs need filtering at the DNS or proxy layer to ensure that all traffic on the school network is compliant. Our database integrates with DNS-based filtering appliances and cloud proxies, providing instant category lookups for every domain requested on the network regardless of device ownership.

120M
Domains Classified
58
Content Categories
<10ms
API Response Time
99.9%
Uptime SLA

API Integration for School Web Filtering

Add CIPA-compliant domain classification to your school's filtering infrastructure

K-12 Content Safety Check

Classify domains against school-appropriate categories and enforce age-tiered access policies.

import requests

# Check multiple domains against school filtering policy
domains = ["khanacademy.org", "coolmathgames.com", "tiktok.com", "gambling-site.xyz"]

for domain in domains:
    response = requests.post(
        "https://webfilteringdatabase.com/api/moderate.php",
        json={"api_key": "YOUR_API_KEY", "query": domain}
    )
    result = response.json()

    # Enforce age-tiered access policy
    category = result["primary_category"]
    risk = result["risk_level"]
    score = result["risk_score"]

    print(f"Domain: {domain} | Category: {category} | Risk: {risk} ({score})")

    if risk == "high" or category in ["gambling", "adult"]:
        print("  -> BLOCKED for all grade levels")
    elif category == "social_media":
        print("  -> BLOCKED for K-5, ALLOWED for 6-12")
// School web filter - classify domains in real time
const domains = ["khanacademy.org", "coolmathgames.com", "tiktok.com", "gambling-site.xyz"];

async function checkDomain(domain) {
    const response = await fetch("https://webfilteringdatabase.com/api/moderate.php", {
        method: "POST",
        headers: { "Content-Type": "application/json" },
        body: JSON.stringify({ "api_key": "YOUR_API_KEY", "query": domain })
    });
    const data = await response.json();

    // Apply school filtering decision
    const { primary_category, categories, risk_level, risk_score } = data;
    console.log(`${domain}: ${primary_category} | Risk: ${risk_level} (${risk_score})`);

    return { domain, primary_category, risk_level, risk_score, categories };
}

// Check all domains concurrently
Promise.all(domains.map(checkDomain)).then(results => {
    results.forEach(r => {
        if (r.risk_level === "high") console.log(`  BLOCKED: ${r.domain}`);
    });
});
# Classify a domain for school filtering
curl -X POST "https://webfilteringdatabase.com/api/moderate.php" \
  -H "Content-Type: application/json" \
  -d '{"api_key": "YOUR_API_KEY", "query": "khanacademy.org"}'

# Response:
# {
#   "primary_category": "education",
#   "categories": ["education", "reference"],
#   "risk_level": "low",
#   "risk_score": 5
# }

# Check a risky domain
curl -X POST "https://webfilteringdatabase.com/api/moderate.php" \
  -H "Content-Type: application/json" \
  -d '{"api_key": "YOUR_API_KEY", "query": "gambling-site.xyz"}'

# Response:
# {
#   "primary_category": "gambling",
#   "categories": ["gambling", "adult"],
#   "risk_level": "high",
#   "risk_score": 95
# }
// School content filter - PHP integration
function classifyDomain($domain) {
    $payload = json_encode([
        "api_key" => "YOUR_API_KEY",
        "query"   => $domain
    ]);

    $ch = curl_init("https://webfilteringdatabase.com/api/moderate.php");
    curl_setopt_array($ch, [
        CURLOPT_POST           => true,
        CURLOPT_POSTFIELDS     => $payload,
        CURLOPT_HTTPHEADER     => ["Content-Type: application/json"],
        CURLOPT_RETURNTRANSFER => true
    ]);
    $response = curl_exec($ch);
    curl_close($ch);

    return json_decode($response, true);
}

// Check domains against school policy
$domains = ["khanacademy.org", "coolmathgames.com", "tiktok.com", "gambling-site.xyz"];

foreach ($domains as $domain) {
    $result = classifyDomain($domain);
    $category = $result["primary_category"];
    $risk = $result["risk_level"];
    echo "$domain: $category (Risk: $risk)\n";
}

The price depends on how many schools and devices you have. Piloting a single school first lets your team read the blocks and reports before deciding on the district.

Ready to Protect Your Students?

Start classifying URLs in minutes. CIPA compliant, E-Rate ready, and built for K-12 school districts of any size.

Ways a school can filter, compared

What changes when the category work is done for you.

TaskRouter block listManaged DNS filter
Covering new sitesSomeone adds each domainNew domains arrive through the category data
Rules per schoolRepeated on every routerSeparate switches per school, one dashboard
Teacher exceptionsIT edits and later removes a rulePIN bypass for 15, 30 or 60 minutes, logged
Devices at homeOut of reachPrivate encrypted link keeps the rules on
Reports for administratorsRouter logsSearchable activity, reports and CSV exports
Open the managed filterStart with one school

Related Resources

school web filtering solutions CIPA compliant filtering