Skip to main content

Security report for realpython.com

Real Python · Education · N/a

Medium risk. 5 critical or high findings in Security headers, GDPR outside view and 2 other checks.

Security score

73/100

Risk levelMedium

0–100, higher is better. How it is calculated

Real Python is a well-established online education platform specializing in Python programming tutorials, courses, books, and community engagement. Founded in 2012 and operated by DevCademy Media Inc., it serves a broad audience of developers, data scientists, and machine learning engineers. The platform offers a comprehensive suite of learning resources including video courses, quizzes, podcasts, and mentoring services, positioning itself as a leading provider in the Python education market. The website demonstrates consistent branding and high-quality content, appealing to learners at all skill levels.

Scanned

NIS2 and GDPR posture

GDPR outside view
53/ 100 · Medium
Checks completed
7of 7

NIS2 Art. 21(2)

  1. (a) Risk analysis and security policies: Not visible from outside
  2. (b) Incident handling: One indicator
  3. (c) Business continuity, backups and crisis management: Not visible from outside
  4. (d) Supply chain security: Not visible from outside
  5. (e) Secure acquisition, development and maintenance, including vulnerability handling: Partly checked
  6. (f) Assessing the effectiveness of security measures: Not visible from outside
  7. (g) Cyber hygiene and security training: Not visible from outside
  8. (h) Cryptography and encryption: Partly checked
  9. (i) HR security, access control and asset management: One indicator
  10. (j) Multi-factor authentication and secured communications: Not visible from outside

This scan rated NIS2 with an earlier keyword method that is no longer shown; rescan for the per-article view. Risk management, continuity, supply chain, training, MFA, management oversight (Art. 20) and incident reporting (Art. 23) need internal evidence, and Guard cannot tell whether NIS2 applies to this organisation.

GDPR is indicative only, based on publicly visible signals: Articles 7, 12, 13 and 32 of Regulation (EU) 2016/679 and Article 5(3) of the ePrivacy Directive. Not a certification or legal assessment.

Priority findings

5 findings rated critical or high. Fix these first.

  1. Security headers

    Security headers are instructions your web server sends to every visitor’s browser. Missing ones leave visitors more exposed to attacks such as clickjacking and injected scripts.

    • High

      Missing Content-Security-Policy header

      Controls resources the browser is allowed to load

      What to do: Implement a Content-Security-Policy appropriate for your application

      • ASVS V3.4.3
      • OWASP Secure Headers: OWASP Secure Headers Project recommends Content-Security-Policy: default-src 'self'; form-action 'self'; base-uri 'self'; object-src 'none';…
  2. GDPR outside view

    These are the privacy signals visitors and data protection authorities look for under GDPR.

    • High

      No Cookie Policy found

      GDPR requires clear information about cookie usage

      What to do: Add a dedicated cookie policy explaining cookie usage and purposes

    • High

      No Cookie Consent Banner found

      GDPR requires explicit consent for non-essential cookies

      What to do: Implement a cookie consent banner that appears on first visit

  3. SSL/TLS

    TLS encrypts the connection and proves the site is really yours. Weak or expiring certificates trigger browser warnings and put traffic at risk.

    • High

      Weak SSL Key Length

      SSL certificate uses 256-bit key, which is considered weak

      What to do: Use at least 2048-bit RSA or 256-bit ECC key

      • CWE-326
      • OWASP A04:2025
      • Mozilla TLS: Mozilla Server Side TLS 6.0 intermediate: rsa_key_size 2048
  4. DNS health

    DNS sends visitors and email to the right servers. Misconfigured records can cause outages or let someone redirect your traffic.

    • High

      Domain Expires Soon

      Domain expires in 15 days

      What to do: Renew domain registration before expiration

Need hands-on remediation? Email guard@offseq.com

Keep watching realpython.com

This scan found 19 issues across 6 checks. Monitoring re-runs those checks daily, emails you when something material changes and records each fix, so you can show progress.

Daily monitoring

Recommended

€25per month

  • TLS certificates and expiry
  • DNS records
  • SPF, DKIM and DMARC
  • Security headers
  • GDPR and NIS2 posture
  • Exposed services
  • Third-party trackers
  • Security score drift

Email alerts on material changes and an exportable JSON history of every change.

Billed monthly to your card. Cancel anytime. See sample alerts.

Full report

€39.90one-time

  • The complete analysis as a PDF you can cite
  • Email delivery with an unlock code
  • Lifetime access to this report

Prices incl. 21% VAT. Secure checkout by Mollie; sold by SEQ SIA, Latvia.

Results by check

Each check with its score, findings and the evidence it collected.

How this score is calculated

The security score runs 0–100, higher is better. It is the plain average of the security checks that completed in this scan, each counted equally. A check that could not run is left out: it counts neither as a pass nor as a fail.

Counted in this score

SSL/TLS
75
Security headers
55
Email security
87
DNS health
65
Network security
100
GDPR outside view
53
Average
73

Not counted

  • NIS2 outside view: Re-weights evidence from the TLS, email, DNS, network and hygiene checks, so counting it would count that evidence twice. Shown on its own.
  • OffSeq Observations: An AI reading of the site, useful context but not reproducible evidence. Shown on its own.

Findings that cap the score at 49

Each of these is serious on its own, so while any is present the site cannot rate better than high risk, however good the other checks are.

  • The certificate is not trusted by browsers
  • The website is not served over HTTPS
  • A database, remote desktop, file-sharing or Telnet service is reachable from the internet
  • The page loads a script from a compromised source
  • The domain registration has expired
  • SPF authorises every server to send mail as the domain

Partial scans

When the site blocks Guard or most checks cannot run, the score covers only the checks that ran (usually DNS and email), is capped at 75 and is shown as partial, without a risk level.

Risk levels

  • Critical0–25
  • High26–49
  • Medium50–75
  • Low76–100

Technical appendix

Business context, site observations and technical notes gathered during the scan, and the standards behind each reference.

Business context

Business profile

The company maintains a strong market position with a mature domain and a diverse offering that includes both free and paid content. Its business model leverages memberships, course sales, and community features to generate revenue. The presence of social media channels and a job board partnership indicates an integrated ecosystem supporting user engagement and career development. The lack of privacy protection in WHOIS is balanced by the use of Cloudflare DNS and domain transfer protections, reflecting a legitimate and stable operation.

Security posture

The website enforces HTTPS with a strong SSL configuration and uses Cloudflare for DNS and CDN services, enhancing security and performance. Security best practices such as clientTransferProhibited domain status and CSRF tokens in forms are observed. However, DNSSEC is not enabled, and explicit security headers are not detected in the provided data. Privacy compliance is partially addressed with clear privacy and terms pages, but cookie consent mechanisms are absent. No vulnerabilities or exposed sensitive data were found, indicating a solid security posture with room for improvement in DNS security and privacy controls.

Recommendations

  1. Enable DNSSEC to strengthen DNS security and prevent spoofing.
  2. Implement a cookie consent banner to improve GDPR compliance and user privacy transparency.
  3. Add security headers such as Content Security Policy (CSP), HSTS, and X-Frame-Options to enhance protection against common web attacks.
  4. Publish a security.txt file to facilitate responsible vulnerability disclosure and improve security communication.
  5. Regularly audit third-party scripts and tracking tools to minimize privacy risks and maintain user trust.
Site observations

Automated reading of the public site. Ratings are indicative.

Business

Company
Real Python
Description
Real Python is a leading provider of online Python education and one of the largest language-specific online communities for software developers. It publishes high-quality learning resources, such as tutorials, books, and courses to an audience of millions of developers, data scientists, and machine learning engineers each month.
Key services
Python tutorials, Video courses, Books, Podcasts, Community chat, Code mentoring, Learning paths, Quizzes and exercises
Content quality
excellent
Branding
consistent

Technology

Stack
Cloudflare (DNS and CDN), Bootstrap, jQuery, Popper.js, Google Tag Manager, htmx, Custom JavaScript modules
Frameworks
Bootstrap
Performance
fast
Mobile
excellent
Accessibility
good
SEO
good

Security

Observed score
85/100
Good practices seen
  • HTTPS enforced
  • ClientTransferProhibited domain status
  • Use of Cloudflare DNS
  • Secure cookies for Google Analytics client ID
  • CSRF token in forms

Analytics and tracking

Services
Google Analytics (via Google Tag Manager)
Tracking level
moderate
Privacy practices
basic

Advertising

Transparency
basic

Site quality

Design
excellent
User experience
excellent
Content relevance
excellent
Navigation
excellent
Professionalism
excellent
Trustworthiness
high

Key observations

  1. Website is fully accessible with rich content and no blocking.
  2. Strong brand presence with consistent and professional design.
  3. Comprehensive educational resources for Python developers.
  4. Use of modern web technologies and good mobile optimization.
  5. Privacy and terms pages are present and accessible.
  6. No signs of suspicious or malicious content.
  7. WHOIS data supports legitimacy and trustworthiness.
Technical notes

Notes

The website uses a modern and performant technology stack including Bootstrap for responsive design, jQuery and Popper.js for UI interactions, and htmx for dynamic content loading. Hosting and DNS are managed via Cloudflare, ensuring fast content delivery and DDoS protection. The site is mobile-optimized with good accessibility and SEO practices. The absence of a known CMS suggests a custom-built platform tailored for educational content delivery. Overall, the technical infrastructure supports a high-quality user experience with scalability and security considerations.
Standards and sources

Reference chips under each finding point to the standard, regulation or specification the finding relates to. They are taken from the official datasets below and mapped conservatively: a finding with no defensible link shows none. NIS2 and GDPR references mark where a finding is relevant evidence, not a compliance verdict. Implementing Regulation (EU) 2024/2690 binds digital infrastructure and digital service providers; for other entities it is the most detailed public reading of the Article 21 measures. WCAG, EN 301 549, European Accessibility Act and Web Accessibility Directive references name the requirement an automated accessibility rule relates to; they are not a conformance verdict.

Retrieved 2026-10-25

Reviews of this site

Share your experience with realpython.com. Every review is verified by email and published after moderation.

Overall rating
Select a rating
4000 characters remaining

We’ll email you to confirm your review and keep your details private.

Community rating

No published reviews yet. Be the first to review realpython.com.

Feedback on this report

Rate this report, add an optional comment, and tell us if you want a security specialist to follow up.

Overall report quality
Select a rating
2000 characters remaining

We only use your feedback to improve Guard reports. Contact details are never shared.