Skip to content
Ben GarvesLinkedIn
Menu

Tool Onboarding

Project One-Pager: OnCrawl/BrightEdge Log File Analyzer Implementation

From Ben Garves’s work at Udemy. Re-created from the original document, with people’s names, internal links and non-public numbers removed or generalized.

Project brief

Company
Udemy
Format
Project one-pager
Contributing teams
Product (Ben Garves), Engineering, SEO/Marketing
Tool
OnCrawl Log File Analyzer (BrightEdge)

A one-pager proposing that Udemy implement the OnCrawl/BrightEdge Log File Analyzer so the SEO team can see how search engine and AI crawlers interact with the site, covering users, hypotheses, success criteria, a phased setup plan and risks.

  • Technical SEO
  • Log file analysis
  • AI crawlers
  • Crawl budget

RICE scores

While this work doesn’t directly impact Udemy’s reach, it implements a tool that gives us visibility into AI bot behavior on our content, which we can use to more accurately understand and measure the impact of work we do.

ReachImpactConfidenceEffortScore
N/A3100%5N/A

Background

For Udemy’s SEO initiatives, log file analysis is a critical capability that will allow us to understand how search engine and LLM crawlers interact with our website, giving us a window into how users discover our content through organic search and organic AI interactions.

We currently have no visibility into:

ItemNotes
Crawl behaviorWhich pages Google is crawling, how frequently, and crawl depth patterns
Crawl efficiencyWhether Google is wasting crawl budget on low-value pages or missing important content
Server-side issues during crawlHTTP status codes and errors that search bots encounter vs. what we see in testing

OnCrawl Log File Analyzer

The BrightEdge/OnCrawl Log File Analyzer is an enterprise SEO/AI tool that processes server log files to provide us with insights into crawler behavior. By implementing this tool, we’d gain the ability to:

  • Cross-reference what Google crawls vs. what we think is crawlable
  • Identify crawl budget waste and optimization opportunities
  • Detect server errors affecting search bots that may not appear in other monitoring tools
  • Validate that technical SEO changes improve crawler accessibility
  • Analyze organic traffic patterns at the server level

Who is the user?

User typeUserNotes
PrimarySEO TeamWill use log analysis insights to identify crawl issues, optimize crawl budget, and measure SEO impact
PrimaryTechnical SEO SpecialistsWill configure and maintain the tool, interpret data, and create reports
PrimaryData/Analytics TeamsMay use log data to supplement GSC/GA4/analytics platforms for organic traffic analysis
SecondaryEngineering/DevOpsResponsible for providing log files, setting up automated uploads, and maintaining access
SecondaryProduct managersMay use insights to understand which content search engines prioritize
SecondaryLeadershipWill receive reporting on SEO health and performance trends
  • SEO Team

    User type
    Primary
    Notes
    Will use log analysis insights to identify crawl issues, optimize crawl budget, and measure SEO impact
  • Technical SEO Specialists

    User type
    Primary
    Notes
    Will configure and maintain the tool, interpret data, and create reports
  • Data/Analytics Teams

    User type
    Primary
    Notes
    May use log data to supplement GSC/GA4/analytics platforms for organic traffic analysis
  • Engineering/DevOps

    User type
    Secondary
    Notes
    Responsible for providing log files, setting up automated uploads, and maintaining access
  • Product managers

    User type
    Secondary
    Notes
    May use insights to understand which content search engines prioritize
  • Leadership

    User type
    Secondary
    Notes
    Will receive reporting on SEO health and performance trends

Why is solving these problems big enough to matter?

  • Crawl budget optimization
    • Large websites can waste significant crawl budget on low-value pages (pagination, filters, session IDs)
    • Google may never reach important new content if crawlers get stuck in inefficient site areas
  • Hidden technical issues
    • Visibility on the “truth” about what bots experience vs. what we see in testing
    • Can identify: server errors (500s, timeouts) that only affect bots; redirect chains invisible to crawl tools; pages returning 200 status but empty content; mobile vs. desktop crawl discrepancies; duration of crawl when JS is being executed
  • Competitive advantage
    • Competitors likely don’t have log analysis capability
    • Provides unique insights unavailable in Search Console or analytics platforms
    • Allows proactive SEO strategy vs. reactive strategy (problem-solving)

What is the hypothesis?

By implementing OnCrawl Log File Analyzer, we will gain visibility into search engine crawler behavior and organic traffic patterns that will allow us to identify and fix technical SEO issues, optimize crawl efficiency, and ultimately improve organic search performance.

Other hypotheses

Crawl waste existsWe hypothesize that Google is spending significant crawl budget on low-value pages (duplicates, filters, old content), preventing important pages from being crawled frequently
Hidden errors existWe hypothesize that server logs will reveal HTTPS errors, timeouts, or content delivery issues affecting search bots that don’t appear in our current monitoring tools
Crawl frequency correlates with rankingsWe hypothesize that pages crawled more frequently by Google will show stronger organic performance, and that we can influence crawl frequency through technical optimizations
Mobile/desktop crawl discrepanciesWe hypothesize that mobile and desktop versions of our site may be crawled differently, potentially affecting mobile search performance

What are the success criteria?

  • Log files successfully uploaded and parsed by OnCrawl
  • Parsing correctly identifies Googlebot hits, along with other primary LLM bots (Perplexity, OpenAI, etc.)
  • FTP/upload automation functioning reliably
  • Data appears correctly in OnCrawl dashboard within 24 hours of log generation
  • SEO team trained on tool usage and interpretation

What are we building?

Identify log sources

  • Determine whether logs needed from CDN (e.g., Cloudflare, Akamai), load balancer, or origin servers
  • Confirm logs capture first user/bot interaction point
  • Identify if multiple log sources needed (mobile, desktop, subdomains)
    • Coverage should include, at a minimum: udemy.com, blog.udemy.com, teach.udemy.com, business.udemy.com, community.udemy.com, events.udemy.com, support.udemy.com

Verify log coverage

  • Ensure logs cover all site sections to be monitored
  • Check for subdomain coverage if needed

Establish access

  • Work with DevOps/IT to obtain credentials/access to log storage location
  • Document log file storage locations (e.g., /var/log/nginx/)
  • Confirm ability to access and download sample files

Log format validation

  • Obtain sample log files (1–2 days of logs)
  • Verify format compatibility
  • Verify log contains required fields:
    • Query path or full URL
    • Date and timestamp
    • User Agent
    • Status code
    • Scheme (http/https) or port (80/443) if site uses HTTPS
    • vhost if multiple subdomains
    • Referer (recommended for organic traffic)
    • Client IP (recommended for Googlebot verification)
    • Response size (recommended)
    • Response time (recommended)
  • Check for Googlebot and organic visits in sample files
  • Document server type (Apache, Nginx, IIS, etc.)

Activate Log Monitoring in OnCrawl

  • Confirm OnCrawl Log Monitoring subscription is active
  • Navigate to project > “ADD DATA SOURCES” > “ACTIVATE LOGS MONITORING”
  • Complete configuration steps:
    • Step 1: “Configure your needs” — Define what to monitor
    • Step 2: “Logs completeness” — Confirm log file contents
  • Use completed checklist from Phase 1 to answer parsing questions

Determine upload method

Automatic upload (preferred if using supported platforms)

  • Best for: AWS S3, Google Cloud Storage, Akamai, Azure Blob
  • Contact OnCrawl to set up secure connector
  • Configure connector with:
    • Storage location credentials
    • Folder paths for log files
    • Upload schedule (daily recommended)

Manual upload (via FTPS)

  • Best for: Server-based logs or unsupported storage platforms
  • Set up FTPS access:
    • Server: ftp.oncrawl.com
    • Username: OnCrawl account username
    • Password: Set in workspace settings > FTP Access
    • Ports: 21 (connection), 10090–10999 (passive mode)
    • Security: FTPS with TLS 1.2 (Explicit FTP over TLS)
  • Configure network/firewall:
    • Open FTP ports on firewall
    • Ensure FTPS (not plain FTP) is allowed
  • Set up FTP client (FileZilla recommended)
  • Test connection and locate project folder

Log file preparation

  • Compress log files to supported formats: .zip, .gz, or .7z (note: 7z PPMd compression NOT supported)
  • If required by security policies, filter log files to include only:
    • Bot hits (e.g., Googlebot)
    • Organic search traffic
    • Remove irrelevant entries (internal traffic, other bots, etc.)

Upload and parsing

Initial upload

  • Upload 2–7 days of sample log files
  • For automatic upload: Monitor connector to confirm files received
  • For manual upload:
    • Connect via FTPS
    • Navigate to project folder
    • Upload compressed log files
    • Confirm upload completion

Configure parsing

  • Return to OnCrawl > Add Data Sources > Log Files tab
  • Confirm OnCrawl detected uploaded files
  • Click “I’VE UPLOADED ALL FILES”
  • Review parsing results (Step 4: “Check logs format”):
  • Address errors:
    • Target: “Everything seems OK” status
    • Fix any issues in: the “Issues” section, “HTTP/HTTPS analysis” and “Subdomain analysis”
  • Resolve warnings:
    • “No SEO visits detected” — Verify organic traffic exists in logs
    • “No bot hits detected” — Verify Googlebot visits exist; may need to disable IP validation if using cache
    • “High parse error rate” — Investigate format inconsistencies
  • Manual parsing configuration (if needed):
    • Switch to “Manual” in “Configure logs parser”
    • Map log elements to correct field types using dropdowns
    • Advanced settings: disable “Check Google IP” if using cache server; set timezone if not in logs
  • Iterate: Click “CHECK LOGS FORMAT” after each change
  • Finalize: Click “CONFIGURATION IS OK” when parse succeeds and warnings resolved

Automation and monitoring

  • Automate daily uploads
  • Set up monitoring

SEO team training

  • Conduct training session on:
    • OnCrawl platform navigation
    • Log analysis reports and metrics
    • How to interpret crawl data
    • Cross-analysis with crawl data (if applicable)
    • Use cases and workflows

Related links

What are the risks?

RiskSeverityLikelihoodMitigation
Data privacy/security concernsHighMediumWork with IT/Security early; implement FTPS encryption; filter sensitive data from logs if needed; confirm OnCrawl complies with data policies; review data processing agreement
Cannot access required log filesHighMediumIdentify log sources early; escalate to IT/DevOps leadership; explore alternative log sources (CDN vs. origin); build business case for access
Parsing fails for custom log formatMediumMediumTest with sample files early; leverage OnCrawl support for complex formats; consider JSON log format if possible; document manual parsing configuration
Log files incomplete or missing required dataHighLowValidate log format in Phase 1; work with DevOps to modify logging configuration if needed; ensure CDN/load balancer logs capture all required fields
Automated upload failsMediumMediumImplement monitoring/alerts for upload failures; have manual backup process; test automation thoroughly before relying on it; document troubleshooting steps
High parse error rates render data unusableHighLowThorough validation in setup phase; allow extra time for parsing configuration; engage OnCrawl support; consider filtering malformed lines
Too little time or training set aside to analyze the dataMediumHighProvide comprehensive training; start with simple use cases; dedicate specific time for log analysis; create templates for common analyses
Legal/compliance restrictions on sharing logsHighLowReview with Legal early; implement log filtering to remove PII; use on-premise solution if cloud sharing prohibited; document compliance measures
File size/volume overwhelms upload capacityLowMediumImplement compression; filter unnecessary log lines; upgrade network capacity if needed; consider log sampling for very large sites
OnCrawl costs exceed budgetMediumLowConfirm subscription limits during setup; monitor data volumes; understand pricing tiers; set up usage alerts if available
Knowledge loss if key person leavesMediumMediumDocument all setup steps; train multiple team members; maintain runbooks; schedule knowledge-sharing sessions
False positives in Googlebot identificationLowMediumEnable IP verification (default); monitor quality metrics in Log Manager; review sample data regularly; adjust filtering if needed
  • Data privacy/security concerns

    Severity
    High
    Likelihood
    Medium
    Mitigation
    Work with IT/Security early; implement FTPS encryption; filter sensitive data from logs if needed; confirm OnCrawl complies with data policies; review data processing agreement
  • Cannot access required log files

    Severity
    High
    Likelihood
    Medium
    Mitigation
    Identify log sources early; escalate to IT/DevOps leadership; explore alternative log sources (CDN vs. origin); build business case for access
  • Parsing fails for custom log format

    Severity
    Medium
    Likelihood
    Medium
    Mitigation
    Test with sample files early; leverage OnCrawl support for complex formats; consider JSON log format if possible; document manual parsing configuration
  • Log files incomplete or missing required data

    Severity
    High
    Likelihood
    Low
    Mitigation
    Validate log format in Phase 1; work with DevOps to modify logging configuration if needed; ensure CDN/load balancer logs capture all required fields
  • Automated upload fails

    Severity
    Medium
    Likelihood
    Medium
    Mitigation
    Implement monitoring/alerts for upload failures; have manual backup process; test automation thoroughly before relying on it; document troubleshooting steps
  • High parse error rates render data unusable

    Severity
    High
    Likelihood
    Low
    Mitigation
    Thorough validation in setup phase; allow extra time for parsing configuration; engage OnCrawl support; consider filtering malformed lines
  • Too little time or training set aside to analyze the data

    Severity
    Medium
    Likelihood
    High
    Mitigation
    Provide comprehensive training; start with simple use cases; dedicate specific time for log analysis; create templates for common analyses
  • Legal/compliance restrictions on sharing logs

    Severity
    High
    Likelihood
    Low
    Mitigation
    Review with Legal early; implement log filtering to remove PII; use on-premise solution if cloud sharing prohibited; document compliance measures
  • File size/volume overwhelms upload capacity

    Severity
    Low
    Likelihood
    Medium
    Mitigation
    Implement compression; filter unnecessary log lines; upgrade network capacity if needed; consider log sampling for very large sites
  • OnCrawl costs exceed budget

    Severity
    Medium
    Likelihood
    Low
    Mitigation
    Confirm subscription limits during setup; monitor data volumes; understand pricing tiers; set up usage alerts if available
  • Knowledge loss if key person leaves

    Severity
    Medium
    Likelihood
    Medium
    Mitigation
    Document all setup steps; train multiple team members; maintain runbooks; schedule knowledge-sharing sessions
  • False positives in Googlebot identification

    Severity
    Low
    Likelihood
    Medium
    Mitigation
    Enable IP verification (default); monitor quality metrics in Log Manager; review sample data regularly; adjust filtering if needed