{
    "ready": true,
    "site": {
        "id": 0,
        "domain": "rupertarzeian.com",
        "display_name": "Fountain pen blog",
        "primary_country_code": "",
        "category_name": "Business"
    },
    "metrics": {
        "global_rank": 4353,
        "country_rank": 2240,
        "category_rank": 18,
        "daily_pageviews_per_visitor": 4.11,
        "daily_time_on_site_seconds": 397,
        "bounce_rate": 28.88,
        "search_visits_percent": 42.22,
        "total_sites_linking_in": 2,
        "monthly_unique_visitors": 290,
        "recorded_at": "2026-04-01 02:06:50"
    },
    "audit": {
        "score": 95
    },
    "traffic_sources": {
        "direct_percent": 27.75,
        "search_percent": 35.27,
        "social_percent": 8.09,
        "referral_percent": 12.12,
        "email_percent": 6.81,
        "paid_percent": 9.96
    },
    "seo_profile": {
        "backlinks_total": 2,
        "referring_domains": 2,
        "dofollow_backlinks_percent": 100,
        "organic_keywords": 98,
        "indexed_pages": 167,
        "page_speed_score": 100,
        "mobile_friendliness_score": 93,
        "authority_score": 49,
        "spam_risk_score": 12
    },
    "crawl_report": {
        "robots_status": 0,
        "sitemap_status": 0,
        "sitemap_total_urls": 0,
        "crawl_blocked": false,
        "crawl_blocked_by": "",
        "crawl_blocked_reason": "",
        "notes": [
            "robots.txt could not be confirmed.",
            "Sitemap could not be confirmed."
        ],
        "created_at": "2026-04-01 02:06:50"
    },
    "keywords": [
        {
            "keyword": "Fountain pen blog",
            "position": 18,
            "search_engine": "Estimated",
            "checked_at": "2026-04-17 10:47:12",
            "is_estimated": true
        },
        {
            "keyword": "Fountain pen blog business",
            "position": 20,
            "search_engine": "Estimated",
            "checked_at": "2026-04-17 10:47:12",
            "is_estimated": true
        },
        {
            "keyword": "Fountain pen blog reviews",
            "position": 22,
            "search_engine": "Estimated",
            "checked_at": "2026-04-17 10:47:12",
            "is_estimated": true
        },
        {
            "keyword": "fountain",
            "position": 24,
            "search_engine": "Estimated",
            "checked_at": "2026-04-17 10:47:12",
            "is_estimated": true
        },
        {
            "keyword": "pen",
            "position": 26,
            "search_engine": "Estimated",
            "checked_at": "2026-04-17 10:47:12",
            "is_estimated": true
        },
        {
            "keyword": "blog",
            "position": 28,
            "search_engine": "Estimated",
            "checked_at": "2026-04-17 10:47:12",
            "is_estimated": true
        },
        {
            "keyword": "rupertarzeian",
            "position": 30,
            "search_engine": "Estimated",
            "checked_at": "2026-04-17 10:47:12",
            "is_estimated": true
        },
        {
            "keyword": "pens",
            "position": 32,
            "search_engine": "Estimated",
            "checked_at": "2026-04-17 10:47:12",
            "is_estimated": true
        }
    ],
    "rating": {
        "overall": 64,
        "label": "Healthy",
        "breakdown": [
            {
                "label": "Technical foundation",
                "score": 12,
                "max": 18
            },
            {
                "label": "Authority & trust",
                "score": 15,
                "max": 30
            },
            {
                "label": "Reach & market presence",
                "score": 3,
                "max": 18
            },
            {
                "label": "Search visibility",
                "score": 4,
                "max": 12
            },
            {
                "label": "Engagement & retention",
                "score": 9,
                "max": 10
            },
            {
                "label": "Channels & diversification",
                "score": 4,
                "max": 6
            },
            {
                "label": "Registry stability",
                "score": 4,
                "max": 6
            },
            {
                "label": "Quality system",
                "score": 67,
                "max": 100
            },
            {
                "label": "Reputation system",
                "score": 48,
                "max": 100
            },
            {
                "label": "Safety system",
                "score": 100,
                "max": 100
            },
            {
                "label": "Evidence confidence",
                "score": 53,
                "max": 100
            },
            {
                "label": "External intelligence",
                "score": 50,
                "max": 100
            }
        ],
        "authority_score": 51,
        "quality_score": 67,
        "reputation_score": 48,
        "safety_score": 100,
        "confidence_score": 53,
        "fraud_score": 1,
        "authority_signals": {
            "backlinks": 2,
            "referring_domains": 2,
            "organic_keywords": 98,
            "indexed_pages": 167,
            "monthly_visitors": 290,
            "global_rank": 4353,
            "engagement_score": 83,
            "crawl_quality_score": 100,
            "brand_completeness_score": 87,
            "link_diversity_score": 93,
            "technical_reliability_score": 78,
            "whois_score": 69,
            "whois_age_years": 9.2,
            "whois_stability_score": 100,
            "spam_penalty": 0
        },
        "whois_signals": {
            "age_years": 9.2,
            "days_to_expiry": 279,
            "days_since_last_registry_update": 105,
            "stability_score": 100,
            "registrar_changes": 0,
            "ownership_changes": 0,
            "nameserver_changes": 0,
            "status_changes": 0,
            "history_entries": 1,
            "privacy_protected": false,
            "dnssec_enabled": false,
            "has_registrant_country": false,
            "registrant_country": "",
            "nameserver_count": 3,
            "status_count": 1
        }
    },
    "authority_score": 51,
    "trust_score": 80,
    "domain_tags": {
        "primary_tag": "T",
        "primary_tag_score": 86,
        "primary_candidate": "T",
        "primary_candidate_score": 86,
        "tag_codes": "T,Uncertain",
        "tags": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good",
                "description": "Strong trust, stability, and low-risk signals were detected.",
                "reason": "Low spam indicators plus strong trust, quality, registry, and stability signals were detected. Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
                "message": "The site shows a reasonably trustworthy and stable profile.",
                "priority": 86,
                "score": 86,
                "match_percent": 86,
                "threshold_band": "strong"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown",
                "description": "External checks stayed inconclusive, so the model avoided a harder verdict.",
                "reason": "External checks stayed inconclusive, so the system kept an uncertainty buffer.",
                "message": "The evidence is materially mixed or partially corroborated, so the model is avoiding a harder verdict.",
                "priority": 68,
                "score": 68,
                "match_percent": 68,
                "threshold_band": "strong"
            }
        ],
        "tag_breakdown": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good",
                "description": "Strong trust, stability, and low-risk signals were detected.",
                "reason": "Low spam indicators plus strong trust, quality, registry, and stability signals were detected. Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
                "message": "The site shows a reasonably trustworthy and stable profile.",
                "priority": 86,
                "score": 86,
                "match_percent": 86,
                "threshold_band": "strong"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown",
                "description": "External checks stayed inconclusive, so the model avoided a harder verdict.",
                "reason": "External checks stayed inconclusive, so the system kept an uncertainty buffer.",
                "message": "The evidence is materially mixed or partially corroborated, so the model is avoiding a harder verdict.",
                "priority": 68,
                "score": 68,
                "match_percent": 68,
                "threshold_band": "strong"
            },
            {
                "code": "Infra",
                "label": "Risky infrastructure",
                "tone": "caution",
                "description": "The hosting / registrar / nameserver neighbourhood looks unusually risky.",
                "reason": "The infrastructure neighbourhood looks riskier than normal.",
                "message": "Infrastructure risk does not currently stand out.",
                "priority": 4,
                "score": 4,
                "match_percent": 4,
                "threshold_band": "none"
            },
            {
                "code": "C",
                "label": "Caution",
                "tone": "caution",
                "description": "Signals are mixed or weak, so this domain should be treated carefully.",
                "reason": "Review carefully: mixed trust signals. Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
                "message": "The current crawl does not show a meaningful caution match.",
                "priority": 0,
                "score": 0,
                "match_percent": 0,
                "threshold_band": "none"
            },
            {
                "code": "Crypto",
                "label": "Crypto drainer risk",
                "tone": "toxic",
                "description": "Wallet-connect or seed-phrase theft patterns were detected.",
                "reason": "Wallet-connect or seed-phrase theft patterns were detected.",
                "message": "No meaningful crypto-drainer signals were detected.",
                "priority": 0,
                "score": 0,
                "match_percent": 0,
                "threshold_band": "none"
            }
        ],
        "nsfw_score": 0,
        "trust_score": 81,
        "manual": {
            "has_changes": false,
            "verified_status": "",
            "tag_codes": "",
            "rating_delta": 0,
            "authority_delta": 0,
            "trust_delta": 0,
            "note": "",
            "adjusted_by": 0,
            "adjusted_at": "",
            "lock_scores": false,
            "lock_flags": false
        },
        "summary": "Trusted (86% match) because low spam indicators plus strong trust, quality, registry, and stability signals were detected. showing the stored external intelligence snapshot. new search and review intelligence only runs after a visitor uses refresh data manually.",
        "external_intel": {
            "domain": "rupertarzeian.com",
            "candidate_tag": "T",
            "checked_at": "2026-03-18T19:49:05+00:00",
            "status": "fresh",
            "snapshot_version": 5,
            "summary": "Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
            "search_intelligence": {
                "queries": [
                    "\"rupertarzeian.com\" -site:rupertarzeian.com -site:www.rupertarzeian.com",
                    "\"rupertarzeian.com\" official site -site:rupertarzeian.com -site:www.rupertarzeian.com",
                    "\"rupertarzeian.com\" wikipedia -site:rupertarzeian.com -site:www.rupertarzeian.com",
                    "\"rupertarzeian.com\" reviews OR complaints -site:rupertarzeian.com -site:www.rupertarzeian.com",
                    "\"rupertarzeian.com\" reputation OR scam OR legit OR safe -site:rupertarzeian.com -site:www.rupertarzeian.com",
                    "\"rupertarzeian.com\" BBB OR LinkedIn OR Crunchbase OR \"Companies House\" OR wikipedia -site:rupertarzeian.com -site:www.rupertarzeian.com",
                    "rupertarzeian website -site:rupertarzeian.com -site:www.rupertarzeian.com",
                    "rupertarzeian company -site:rupertarzeian.com -site:www.rupertarzeian.com",
                    "rupertarzeian wikipedia -site:rupertarzeian.com -site:www.rupertarzeian.com",
                    "rupertarzeian reviews -site:rupertarzeian.com -site:www.rupertarzeian.com",
                    "rupertarzeian complaints -site:rupertarzeian.com -site:www.rupertarzeian.com",
                    "rupertarzeian trustpilot -site:rupertarzeian.com -site:www.rupertarzeian.com"
                ],
                "providers": [
                    "duckduckgo"
                ],
                "provider_result_counts": {
                    "duckduckgo": 0
                },
                "results_found": 1,
                "external_results_found": 0,
                "used_direct_fallback": true,
                "results": [
                    {
                        "provider": "direct-domain-fallback",
                        "url": "https://rupertarzeian.com/",
                        "host": "rupertarzeian.com",
                        "title": "Fountain pen blog | Pens, inks, notebooks and other accessories",
                        "snippet": "First-party fallback captured directly from the domain when public search engines returned no usable results.",
                        "is_direct_fallback": true,
                        "source_meta": {
                            "host": "rupertarzeian.com",
                            "source_type": "official_site",
                            "label": "General web result",
                            "trust_weight": 55,
                            "evidence_weight": 26,
                            "noise_penalty": 0,
                            "requires_exact_domain_match": true,
                            "supports_positive_verdicts": false,
                            "supports_negative_verdicts": true,
                            "freshness_ttl_days": 21
                        },
                        "entity": {
                            "score": 98,
                            "exactness": "exact_domain",
                            "reasons": [
                                "The result host matches the exact domain.",
                                "The exact domain is mentioned in the page snippet or document text.",
                                "The result URL contains the exact domain string.",
                                "The site name or brand appears in the document."
                            ]
                        },
                        "query": "direct-fallback",
                        "rank": 1
                    }
                ],
                "source_mix": {
                    "official_site": 1
                },
                "entity_coverage_score": 98,
                "high_trust_result_count": 0,
                "exact_match_result_count": 1,
                "high_entity_result_count": 1,
                "query_hit_count": 1,
                "query_count": 12,
                "deadline_hit": true
            },
            "review_intelligence": {
                "documents_fetched": 1,
                "external_documents_fetched": 0,
                "documents": [
                    {
                        "provider": "direct-domain-fallback",
                        "url": "https://rupertarzeian.com/",
                        "host": "rupertarzeian.com",
                        "title": "Fountain pen blog | Pens, inks, notebooks and other accessories",
                        "snippet": "First-party fallback captured directly from the domain when public search engines returned no usable results.",
                        "is_direct_fallback": true,
                        "source_meta": {
                            "host": "rupertarzeian.com",
                            "source_type": "official_site",
                            "label": "General web result",
                            "trust_weight": 55,
                            "evidence_weight": 26,
                            "noise_penalty": 0,
                            "requires_exact_domain_match": true,
                            "supports_positive_verdicts": false,
                            "supports_negative_verdicts": true,
                            "freshness_ttl_days": 21
                        },
                        "entity": {
                            "score": 98,
                            "exactness": "exact_domain",
                            "reasons": [
                                "The result host matches the exact domain.",
                                "The exact domain is mentioned in the page snippet or document text.",
                                "The result URL contains the exact domain string.",
                                "The site name or brand appears in the document."
                            ]
                        },
                        "query": "direct-fallback",
                        "rank": 1,
                        "body": "Fountain pen blog | Pens, inks, notebooks and other accessories Skip to content Fountain pen blog Pens, inks, notebooks and other accessories Menu Home Index of pen posts About Contact The London Spring Pen Show, 2026: my stall. March 6, 2026March 7, 2026 ~ rupertarzeian ~ 2 Comments On Sunday, 1 March 2026 the London Spring Pen Show was held, once again at the Novotel London West, Hammersmith. It was a great day as always but this year, my experience was very different: I attended as a vendor for the first time. So rather than posting about my haul, (which was nil), this post will be to share a few reflections from a first time vendor. The suggestion of booking a table was floated at our pen club, sometime last year. It seemed a good idea and an opportunity for me to sell some pens instead of constantly buying more. In the event, four of us chose to book a table to share. Doing this together immediately made it seem a lot less daunting. In an initial burst of efficiency, I purchased a card reader device, to take payments at the show. But for the following few months, I thought only intermittently, about which of my pens I might try to sell. Being a hoarder and fountain pens being a prime hobby, I found it difficult to contemplate parting with my pens. Each had been acquired with no intention of selling. But I must have anticipated that they would be passed on to someone eventually as I had also hoarded most of their boxes. It made sense to prune my accumulation of pens, even by a little. I was leaving it until nearer the time, to decide which to sell. Putting a sale price on a pen, was harder than I had thought. I expected to sell most at a loss. I had a very loose formula, thinking how much I had paid for the pen; factoring in what its current replacement cost might be; and allowing a discount for it being a used (or pre-loved) pen. I could then adjust the resulting figure up or down to reflect how I felt. As well as my wish to hold on to my pens, I was also a bit despondent about losing money on them. But, as my wife cleverly pointed out, if you are not using the pens, you have already lost money on them. As the show drew closer, I looked over my entire pen accumulation, and made a draft list of those that I might sell. I focused on the modern pens, as opposed to vintage. The majority of my vintage pens are Parkers from recent pen shows or eBay and I was not intending to sell those. Seeing the pens listed was a good start. Conveniently the number was around 48. These could all be carried in two zip pen cases, each holding 24 pens. Over a few days, I wrote down my provisional sale prices. How to decide which pens to sell? One way is to ask yourself whether you have used it in the past year, or even two years, and whether you are likely to use it again. I had quite a few in this category, but that did not always mean I wanted to sell them. A few of these pens caused me to feel quite sad whenever I remembered that they were on the sale list. Of course I could simply withdraw them from the sale, or adjust the price upwards a little, or keep them in the sale and hope that no-one bought them! With pens listed and prices set, I put the pens in the zip cases. I then needed to write the prices on tags. I envisaged writing the prices and a few words of description such as nib size on the tags and to thread the strings through the pocket clip. The pens could be transported and displayed in the zip cases, but I feared that on opening them, I would find the price tags all tangled together. Alternatively I could bring the tags separately and at…",
                        "html": "<!DOCTYPE html> <html lang=\"en\"> <head> <meta charset=\"UTF-8\"> <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\"> <title>Fountain pen blog | Pens, inks, notebooks and other accessories</title> <link rel=\"profile\" href=\"http://gmpg.org/xfn/11\"> <link rel=\"pingback\" href=\"https://rupertarzeian.com/xmlrpc.php\"> <script type=\"text/javascript\"> WebFontConfig = {\"google\":{\"families\":[\"Merriweather:r,i,b,bi:latin,latin-ext\"]},\"api_url\":\"https:\\/\\/fonts-api.wp.com\\/css\"}; (function() { var wf = document.createElement('script'); wf.src = '/wp-content/plugins/custom-fonts/js/webfont.js'; wf.type = 'text/javascript'; wf.async = 'true'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(wf, s); })(); </script><style id=\"jetpack-custom-fonts-css\">.wf-active body{font-family:\"Merriweather\",serif}.wf-active button, .wf-active input[type=\"button\"], .wf-active input[type=\"reset\"], .wf-active input[type=\"submit\"]{font-family:\"Merriweather\",serif}.wf-active pre{font-family:\"Merriweather\",serif}</style> <meta name='robots' content='max-image-preview:large' /> <!-- Async WordPress.com Remote Login --> <script id=\"wpcom_remote_login_js\"> var wpcom_remote_login_extra_auth = ''; function wpcom_remote_login_remove_dom_node_id( element_id ) { var dom_node = document.getElementById( element_id ); if ( dom_node ) { dom_node.parentNode.removeChild( dom_node ); } } function wpcom_remote_login_remove_dom_node_classes( class_name ) { var dom_nodes = document.querySelectorAll( '.' + class_name ); for ( var i = 0; i < dom_nodes.length; i++ ) { dom_nodes[ i ].parentNode.removeChild( dom_nodes[ i ] ); } } function wpcom_remote_login_final_cleanup() { wpcom_remote_login_remove_dom_node_classes( \"wpcom_remote_login_msg\" ); wpcom_remote_login_remove_dom_node_id( \"wpcom_remote_login_key\" ); wpcom_remote_login_remove_dom_node_id( \"wpcom_remote_login_validate\" ); wpcom_remote_login_remove_dom_node_id( \"wpcom_remote_login_js\" ); wpcom_remote_login_remove_dom_node_id( \"wpcom_request_access_iframe\" ); wpcom_remote_login_remove_dom_node_id( \"wpcom_request_access_styles\" ); } // Watch for messages back from the remote login window.addEventListener( \"message\", function( e ) { if ( e.origin === \"https://r-login.wordpress.com\" ) { var data = {}; try { data = JSON.parse( e.data ); } catch( e ) { wpcom_remote_login_final_cleanup(); return; } if ( data.msg === 'LOGIN' ) { // Clean up the login check iframe wpcom_remote_login_remove_dom_node_id( \"wpcom_remote_login_key\" ); var id_regex = new RegExp( /^[0-9]+$/ ); var token_regex = new RegExp( /^.*|.*|.*$/ ); if ( token_regex.test( data.token ) && id_regex.test( data.wpcomid ) ) { // We have everything we need to ask for a login var script = document.createElement( \"script\" ); script.setAttribute( \"id\", \"wpcom_remote_login_validate\" ); script.src = '/remote-login.php?wpcom_remote_login=validate' + '&wpcomid=' + data.wpcomid + '&token=' + encodeURIComponent( data.token ) + '&host=' + window.location.protocol + '//' + window.location.hostname + '&postid=21315' + '&is_singular='; document.body.appendChild( script ); } return; } // Safari ITP, not logged in, so redirect if ( data.msg === 'LOGIN-REDIRECT' ) { window.location = 'https://wordpress.com/log-in?redirect_to=' + window.location.href; return; } // Safari ITP, storage access failed, remove the request if ( data.msg === 'LOGIN-REMOVE' ) { var css_zap = 'html { -webkit-transition: margin-top 1s; transition: margin-top 1s; } /* 9001 */ html { margin-top: 0 !important; } * html body { margin-top: 0 !important; } @media screen and ( max-width: 782px ) { html { margin-top: 0 !important; } * html body { margin-top: 0 !important; } }'; var style_zap = document.createElement( 'style' ); style_zap.type = 'text/css'; style_zap.appendChild( document.createTextNode( css_zap ) ); document.body.appendChild( style_zap ); var e = document.getElementById( 'wpcom_request_access_iframe' ); e.parentNode.removeChild( e ); document.cookie = 'wordpress_com_login_access=denied; path=/; max-age=31536000'; return; } // Safari ITP if ( data.msg === 'REQUEST_ACCESS' ) { console.log( 'request access: safari' ); // Check ITP iframe enable/disable knob if ( wpcom_remote_login_extra_auth !== 'safari_itp_iframe' ) { return; } // If we are in a \"private window\" there is no ITP. var private_window = false; try { var opendb = window.openDatabase( null, null, null, null ); } catch( e ) { private_window = true; } if ( private_window ) { console.log( 'private window' ); return; } var iframe = document.createElement( 'iframe' ); iframe.id = 'wpcom_request_access_iframe'; iframe.setAttribute( 'scrolling', 'no' ); iframe.setAttribute( 'sandbox', 'allow-storage-access-by-user-activation allow-scripts allow-same-origin allow-top-navigation-by-user-activation' ); iframe.src = 'https://r-login.wordpress.com/remote-login.php?wpcom_remote_login=request_access&origin=' + encodeURIComponent( data.origin ) + '&wpcomid=' + encodeURIComponent( data.wpcomid ); var css = 'html { -webkit-transition: margin-top 1s; transition: margin-top 1s; } /* 9001 */ html { margin-top: 46px !important; } * html body { margin-top: 46px !important; } @media screen and ( max-width:…",
                        "status_code": 200,
                        "final_url": "https://rupertarzeian.com/"
                    }
                ],
                "facts": [],
                "ignored_candidates": [],
                "blocked_candidates": 0,
                "source_diversity": 0,
                "host_coverage": 1,
                "source_type_coverage": 1,
                "exact_match_documents": 1,
                "external_exact_match_documents": 0,
                "elapsed_ms": 154,
                "candidates_considered": 1,
                "fetch_success_rate": 100,
                "avg_source_trust": 55,
                "avg_entity_score": 98
            },
            "evidence": {
                "scores": {
                    "legit": 0,
                    "safe": 0,
                    "trusted": 0,
                    "caution": 0,
                    "scam": 0,
                    "dangerous": 0,
                    "spam": 0,
                    "nsfw": 0
                },
                "counts": {
                    "official_presence": 0,
                    "business_profiles": 0,
                    "positive_reviews": 0,
                    "negative_reviews": 0,
                    "scam_reports": 0,
                    "dangerous_reports": 0,
                    "spam_reports": 0,
                    "adult_reports": 0
                },
                "tag_support": [],
                "top_supporting_facts": [],
                "top_positive_facts": []
            },
            "quality": {
                "source_diversity_score": 0,
                "entity_coverage_score": 98,
                "freshness_score": 18,
                "confidence": 23,
                "documents_fetched": 1,
                "external_documents_fetched": 0,
                "fact_count": 0,
                "avg_source_trust": 55,
                "avg_entity_score": 98,
                "fetch_success_rate": 100,
                "exact_match_score": 0,
                "query_coverage_score": 100,
                "host_coverage_score": 20,
                "source_type_coverage_score": 25,
                "qualified_evidence_score": 0,
                "exact_match_documents": 0,
                "blocked_candidates": 0,
                "used_direct_fallback": true,
                "external_results_found": 0
            },
            "decision": {
                "state": "insufficient",
                "uncertainty": true,
                "candidate_support": 0,
                "candidate_contradiction": 0,
                "supports": {
                    "dangerous": false,
                    "scam": false,
                    "spam": false,
                    "nsfw": false,
                    "trusted": false
                },
                "evidence_quality": "low",
                "state_label": "Inconclusive",
                "state_reason": "Public search did not yield usable third-party matches, so the system fell back to first-party inspection only."
            },
            "signals": {
                "scores": {
                    "legit": 0,
                    "safe": 0,
                    "trusted": 0,
                    "caution": 0,
                    "scam": 0,
                    "dangerous": 0,
                    "spam": 0,
                    "nsfw": 0
                },
                "counts": {
                    "official_presence": 0,
                    "business_profiles": 0,
                    "positive_reviews": 0,
                    "negative_reviews": 0,
                    "scam_reports": 0,
                    "dangerous_reports": 0,
                    "spam_reports": 0,
                    "adult_reports": 0
                },
                "candidate_support": 0,
                "candidate_contradiction": 0,
                "highlights": [
                    "External evidence remained inconclusive because diversity, exact matching, or confidence was still too weak."
                ]
            },
            "citations": [],
            "debug": {
                "top_supporting_facts": [],
                "top_positive_facts": [],
                "ignored_candidates": [],
                "budget_ms": 3000,
                "search_budget_ms": 3000,
                "review_budget_ms": 1500,
                "search_mode": "interactive-refresh",
                "query_cap": 12,
                "provider_cap": 2,
                "reason": "interactive-refresh",
                "priority": 75
            },
            "last_good": {
                "checked_at": "2026-03-18T19:49:05+00:00",
                "summary": "External checks ran, but the verified result set was still too sparse to harden the verdict.",
                "decision": {
                    "state": "insufficient",
                    "uncertainty": true,
                    "candidate_support": 0,
                    "candidate_contradiction": 0,
                    "supports": {
                        "dangerous": false,
                        "scam": false,
                        "spam": false,
                        "nsfw": false,
                        "trusted": false
                    },
                    "evidence_quality": "low",
                    "state_label": "Inconclusive",
                    "state_reason": "Public search did not yield usable third-party matches, so the system fell back to first-party inspection only."
                },
                "signals": {
                    "scores": {
                        "legit": 0,
                        "safe": 0,
                        "trusted": 0,
                        "caution": 0,
                        "scam": 0,
                        "dangerous": 0,
                        "spam": 0,
                        "nsfw": 0
                    },
                    "counts": {
                        "official_presence": 0,
                        "business_profiles": 0,
                        "positive_reviews": 0,
                        "negative_reviews": 0,
                        "scam_reports": 0,
                        "dangerous_reports": 0,
                        "spam_reports": 0,
                        "adult_reports": 0
                    },
                    "candidate_support": 0,
                    "candidate_contradiction": 0,
                    "highlights": [
                        "External evidence remained inconclusive because diversity, exact matching, or confidence was still too weak."
                    ]
                },
                "citations": []
            }
        },
        "external_decision": {
            "state": "insufficient",
            "uncertainty": true,
            "candidate_support": 0,
            "candidate_contradiction": 0,
            "supports": {
                "dangerous": false,
                "scam": false,
                "spam": false,
                "nsfw": false,
                "trusted": false
            },
            "evidence_quality": "low",
            "state_label": "Inconclusive",
            "state_reason": "Public search did not yield usable third-party matches, so the system fell back to first-party inspection only."
        },
        "signal_scores": [
            {
                "label": "Strongest tag heuristic",
                "value": "T · 86%",
                "tone": "good",
                "detail": "The highest raw tag match from the heuristic engine before visibility thresholds and manual overrides."
            },
            {
                "label": "Trust score",
                "value": "81/100",
                "tone": "good",
                "detail": "Confidence derived from authority, crawl quality, stability, and risk signals."
            },
            {
                "label": "Authority score",
                "value": "51/100",
                "tone": "caution",
                "detail": "A higher authority score usually means broader reputation and backlink confidence."
            },
            {
                "label": "Spam risk",
                "value": "0/100",
                "tone": "good",
                "detail": "Lower is better. This blends spam indicators with false-positive protections for legitimate sites."
            },
            {
                "label": "Quality score",
                "value": "94/100",
                "tone": "good",
                "detail": "Based on crawl quality, content completeness, and technical evidence."
            },
            {
                "label": "Safety score",
                "value": "100/100",
                "tone": "good",
                "detail": "Higher is safer. Direct fraud signals can heavily cap this even when SEO signals look strong."
            },
            {
                "label": "Fraud score",
                "value": "1/100",
                "tone": "good",
                "detail": "Lower is better. This reflects phishing, drainer, fake-support, fake-shop, and malware signals."
            },
            {
                "label": "Infrastructure risk",
                "value": "4/100",
                "tone": "good",
                "detail": "Lower is better. This reflects the IP, registrar, and nameserver neighbourhood seen by the crawler."
            },
            {
                "label": "Evidence confidence",
                "value": "55/100",
                "tone": "caution",
                "detail": "Higher means the crawler had enough pages and registry evidence to make a stronger call."
            },
            {
                "label": "External evidence",
                "value": "Low",
                "tone": "unknown",
                "detail": "Quality of the structured search and review evidence cluster."
            },
            {
                "label": "External decision",
                "value": "Inconclusive",
                "tone": "unknown",
                "detail": "How third-party evidence compares with the current candidate tag."
            },
            {
                "label": "NSFW score",
                "value": "0/100",
                "tone": "good",
                "detail": "Context-aware adult-content detection with medical / educational false-positive reduction."
            },
            {
                "label": "Registry stability",
                "value": "100/100",
                "tone": "good",
                "detail": "Based on age, expiry runway, and the amount of ownership / registrar churn."
            }
        ],
        "signal_sections": [
            {
                "title": "Registry & ownership",
                "items": [
                    {
                        "label": "Domain age",
                        "value": "9.2 years",
                        "tone": "good",
                        "detail": "Older domains generally carry more historical trust than very new ones."
                    },
                    {
                        "label": "Stability score",
                        "value": "100/100",
                        "tone": "good",
                        "detail": "Penalised by registrar, ownership, and nameserver churn."
                    },
                    {
                        "label": "Days to expiry",
                        "value": "279",
                        "tone": "good",
                        "detail": "Very short renewal windows can be a weak trust signal."
                    },
                    {
                        "label": "Registrar / ownership changes",
                        "value": "0 / 0",
                        "tone": "good",
                        "detail": "Frequent ownership churn can weaken trust."
                    },
                    {
                        "label": "Nameserver changes",
                        "value": "0",
                        "tone": "good",
                        "detail": "Repeated infrastructure changes can indicate instability."
                    },
                    {
                        "label": "DNSSEC / privacy",
                        "value": "DNSSEC off · privacy off",
                        "tone": "caution",
                        "detail": "DNSSEC strengthens DNS trust; privacy is neutral on its own."
                    }
                ]
            },
            {
                "title": "Reputation & search evidence",
                "items": [
                    {
                        "label": "Backlinks",
                        "value": "2",
                        "tone": "unknown",
                        "detail": "Broader backlink evidence usually improves confidence."
                    },
                    {
                        "label": "Referring domains",
                        "value": "2",
                        "tone": "unknown",
                        "detail": "Unique linking domains are more useful than raw link volume."
                    },
                    {
                        "label": "Organic keywords",
                        "value": "98",
                        "tone": "caution",
                        "detail": "Search footprint helps distinguish real sites from thin shells."
                    },
                    {
                        "label": "Indexed pages",
                        "value": "167",
                        "tone": "good",
                        "detail": "Larger index coverage usually means more evidence to classify from."
                    },
                    {
                        "label": "Brand strength",
                        "value": "87/100",
                        "tone": "good",
                        "detail": "Stronger brand signals reduce false positives for legitimate sites."
                    },
                    {
                        "label": "Risk label",
                        "value": "GOOD",
                        "tone": "unknown",
                        "detail": "This is the raw crawl / heuristic risk label feeding the tag model."
                    }
                ]
            },
            {
                "title": "Crawl, content & technicals",
                "items": [
                    {
                        "label": "HTTP status",
                        "value": "200",
                        "tone": "good",
                        "detail": "Healthy responses make classification more reliable."
                    },
                    {
                        "label": "HTTPS / speed",
                        "value": "HTTPS OK · 44 ms",
                        "tone": "good",
                        "detail": "Slow or broken technical signals weaken confidence."
                    },
                    {
                        "label": "Content words",
                        "value": "15,705",
                        "tone": "good",
                        "detail": "Thin pages are harder to trust and easier to manipulate."
                    },
                    {
                        "label": "Schema / structure",
                        "value": "1 schema · meta · H1",
                        "tone": "caution",
                        "detail": "Structured markup and basic on-page hygiene improve quality confidence."
                    },
                    {
                        "label": "Links on page",
                        "value": "135 internal · 8 external",
                        "tone": "good",
                        "detail": "Link patterns help detect thin directories and promo pages."
                    },
                    {
                        "label": "Page speed / mobile",
                        "value": "100/100 · 93/100",
                        "tone": "good",
                        "detail": "Better technical quality generally reduces low-effort site patterns."
                    },
                    {
                        "label": "Crawl access",
                        "value": "Open",
                        "tone": "good",
                        "detail": "The crawler reached the site without an anti-bot challenge."
                    }
                ]
            },
            {
                "title": "External evidence & explainability",
                "items": [
                    {
                        "label": "Decision state",
                        "value": "Inconclusive",
                        "tone": "unknown",
                        "detail": "Public search did not yield usable third-party matches, so the system fell back to first-party inspection only."
                    },
                    {
                        "label": "Evidence quality",
                        "value": "Low",
                        "tone": "unknown",
                        "detail": "Blends source trust, domain matching, evidence diversity, and freshness."
                    },
                    {
                        "label": "Support vs contradiction",
                        "value": "0 / 0",
                        "tone": "unknown",
                        "detail": "Compares how much structured external evidence supports the candidate tag against evidence that contradicts it."
                    },
                    {
                        "label": "Qualified risk sources",
                        "value": "No",
                        "tone": "good",
                        "detail": "Risk tags only promote from external evidence when source diversity or source trust thresholds are met."
                    },
                    {
                        "label": "Uncertainty buffer",
                        "value": "Active",
                        "tone": "caution",
                        "detail": "Prevents thin or mixed external evidence from forcing a stronger tag than the evidence can justify."
                    }
                ]
            }
        ],
        "positives": [
            "Established domain age: 9.2 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "Search evidence is broad enough to classify with better confidence."
        ],
        "risks": [
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting."
        ]
    },
    "traffic_confidence": 69,
    "whois": {
        "current": {
            "id": 17787,
            "domain": "rupertarzeian.com",
            "source_type": "rdap",
            "rdap_url": "https://rdap.verisign.com/com/v1/domain/RUPERTARZEIAN.COM",
            "registrar_name": "Automattic Inc.",
            "registrar_handle": "1531",
            "registrant_name": "",
            "registrant_org": "",
            "registrant_country": "",
            "registrant_email": "",
            "abuse_email": "domainabuse@automattic.com",
            "created_date": "2017-01-21 22:23:57",
            "updated_date": "2026-01-01 13:37:49",
            "expires_date": "2027-01-21 22:23:57",
            "nameservers_json": "[\"ns1.wordpress.com\",\"ns2.wordpress.com\",\"ns3.wordpress.com\"]",
            "status_json": "[\"client transfer prohibited\"]",
            "dnssec": "unsigned",
            "privacy_protected": 0,
            "content_hash": "2694cf6d4d1426c2d0e72985ccf8055d57125daa50b3f5040ec24ffc33d3bfd9",
            "history_count": 1,
            "last_checked_at": "2026-04-01 02:06:48",
            "last_changed_at": "2026-03-17 08:36:22",
            "created_at": "2026-03-17 08:36:22",
            "updated_at": "2026-04-01 02:06:48"
        },
        "history": [
            {
                "id": 18100,
                "domain": "rupertarzeian.com",
                "source_type": "rdap",
                "registrar_name": "Automattic Inc.",
                "registrar_handle": "1531",
                "registrant_name": "",
                "registrant_org": "",
                "registrant_country": "",
                "registrant_email": "",
                "abuse_email": "domainabuse@automattic.com",
                "created_date": "2017-01-21 22:23:57",
                "updated_date": "2026-01-01 13:37:49",
                "expires_date": "2027-01-21 22:23:57",
                "nameservers_json": "[\"ns1.wordpress.com\",\"ns2.wordpress.com\",\"ns3.wordpress.com\"]",
                "status_json": "[\"client transfer prohibited\"]",
                "dnssec": "unsigned",
                "privacy_protected": 0,
                "content_hash": "2694cf6d4d1426c2d0e72985ccf8055d57125daa50b3f5040ec24ffc33d3bfd9",
                "checked_at": "2026-03-17 08:36:22",
                "change_summary": "Initial WHOIS snapshot captured.",
                "created_at": "2026-03-17 08:36:22"
            }
        ],
        "signals": {
            "age_years": 9.2,
            "days_to_expiry": 279,
            "days_since_last_registry_update": 105,
            "stability_score": 100,
            "registrar_changes": 0,
            "ownership_changes": 0,
            "nameserver_changes": 0,
            "status_changes": 0,
            "history_entries": 1,
            "privacy_protected": false,
            "dnssec_enabled": false,
            "has_registrant_country": false,
            "registrant_country": "",
            "nameserver_count": 3,
            "status_count": 1
        }
    },
    "discovered_domain": {
        "id": 246491,
        "domain": "rupertarzeian.com",
        "first_seen_at": "2026-03-17 07:32:04",
        "last_crawled_at": "2026-04-01 02:06:50",
        "last_title": "Fountain pen blog | Pens, inks, notebooks and other accessories",
        "last_http_status": 200,
        "discovered_from_domain": "indieseek.xyz",
        "depth": 1,
        "backlinks_count": 2,
        "rating_cache": 42,
        "spam_score": 0,
        "risk_label": "good",
        "category_name": "Business",
        "primary_country_code": "",
        "internal_links_count": 135,
        "external_links_count": 8,
        "social_profiles_count": 2,
        "content_word_count": 15705,
        "title_quality_score": 93,
        "has_meta_description": 1,
        "has_h1": 1,
        "language_code": "en",
        "response_time_ms": 44,
        "robots_status": 0,
        "sitemap_status": 0,
        "sitemap_total_urls": 0,
        "quality_score": 94,
        "site_name": "Fountain pen blog",
        "canonical_domain": "",
        "favicon_present": 1,
        "schema_org_count": 1,
        "noindex_detected": 0,
        "feed_links_count": 2,
        "https_working": 1,
        "estimated_authority_score": 39,
        "trust_score": 84,
        "nsfw_score": 0,
        "overall_rank_estimate": 1750670,
        "primary_tag": "C",
        "tag_codes": "C,Uncertain",
        "manual_verified_status": "",
        "manual_tag_codes": "",
        "manual_rating_delta": 0,
        "manual_authority_delta": 0,
        "manual_trust_delta": 0,
        "manual_note": null,
        "manual_adjusted_by": null,
        "manual_adjusted_at": null,
        "manual_lock_scores": 0,
        "manual_lock_flags": 0,
        "crawl_blocked": 0,
        "crawl_blocked_by": "",
        "crawl_blocked_reason": null,
        "safety_score": 100,
        "fraud_score": 1,
        "legitimacy_score": 58,
        "infrastructure_risk_score": 4,
        "score_confidence": 53,
        "tag_confidence": 27,
        "category_confidence": 29,
        "deep_crawl_pages": 0,
        "resolved_ip": "192.0.78.24",
        "category_candidates_json": "[{\"category\":\"Business\",\"score\":22}]",
        "page_signals_json": "[]",
        "score_reasons_json": "[\"Category confidence was reduced, so the classifier fell back to the broader parent category.\",\"Trusted status now requires clean crawl access and stronger confidence, so this result was downgraded to caution.\",\"Overall rating is now capped by evidence confidence to prevent inflated scores from thin signals.\"]",
        "route_domain": "rupertarzeian.com",
        "display_domain": "rupertarzeian.com"
    },
    "explainability": {
        "summary": "rupertarzeian.com currently scores 64/100. The score is being shaped by a mixed signal profile rather than one dominant factor. Evidence confidence is moderate, so the score should settle further after more crawl depth or registry checks. This is an estimated profile rather than a manually tracked one. Crawler access looks clean.",
        "badges": [
            {
                "label": "Profile",
                "value": "Estimated profile",
                "tone": "unknown",
                "detail": null
            },
            {
                "label": "Evidence confidence",
                "value": "Moderate confidence",
                "tone": "caution",
                "detail": "53/100"
            },
            {
                "label": "Traffic confidence",
                "value": "Solid confidence",
                "tone": "good",
                "detail": "69/100"
            },
            {
                "label": "Crawler access",
                "value": "Clean visibility",
                "tone": "good",
                "detail": null
            }
        ],
        "weighted_contributions": [
            {
                "label": "Quality system",
                "points": "+22.8",
                "tone": "caution",
                "detail": "Technical quality, crawl depth, page structure, and implementation hygiene. Current subsystem score: 67/100."
            },
            {
                "label": "Reputation system",
                "points": "+16.3",
                "tone": "caution",
                "detail": "Authority, search visibility, reach, engagement, and registry stability. Current subsystem score: 48/100."
            },
            {
                "label": "Safety system",
                "points": "+32.0",
                "tone": "good",
                "detail": "Fraud, spam, and trust signals from infrastructure, crawl, and registry evidence. Current subsystem score: 100/100."
            },
            {
                "label": "Risk clamp",
                "points": "-7.0",
                "tone": "risk",
                "detail": "Safety thresholds capped the final score until the risk profile improves."
            }
        ],
        "evidence_cards": [
            {
                "label": "Authority and trust",
                "value": "51/100 · trust 80/100",
                "tone": "caution",
                "detail": "290 monthly visitors, 98 organic keywords, brand completeness 87/100, engagement 83/100."
            },
            {
                "label": "Backlink and search evidence",
                "value": "2 referring domains",
                "tone": "good",
                "detail": "2 backlinks across 2 referring domains. Diversity 93/100; spam penalty 0."
            },
            {
                "label": "Registry and domain stability",
                "value": "9.2 years old",
                "tone": "good",
                "detail": "Stability 100/100 · age 9.2 years · registrar Automattic Inc. · expires in 279 days."
            },
            {
                "label": "Safety and fraud posture",
                "value": "Safety 100/100 · fraud 1/100",
                "tone": "good",
                "detail": "Primary tag T · safety 100/100 · fraud 1/100."
            }
        ],
        "positives": [
            "Established domain age: 9.2 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "Search evidence is broad enough to classify with better confidence.",
            "Registry history looks stable, which supports legitimacy and trust.",
            "The domain has been registered for years, which usually improves trust confidence."
        ],
        "risks": [
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting."
        ],
        "freshness": [
            {
                "label": "Crawl evidence",
                "value": "2026-04-01 02:06:50",
                "tone": "risk",
                "detail": "Crawl and page content sample. Age: 16d ago."
            },
            {
                "label": "WHOIS snapshot",
                "value": "2026-04-01 02:06:48",
                "tone": "risk",
                "detail": "Registry profile and stability signals. Age: 16d ago."
            },
            {
                "label": "Keyword view",
                "value": "2026-04-17 10:47:12",
                "tone": "good",
                "detail": "Estimated visibility until tracked keyword snapshots exist. Age: 0s ago."
            },
            {
                "label": "Rank history",
                "value": "2026-04-17 10:47:12",
                "tone": "good",
                "detail": "Estimated trend derived from current profile and crawl signals. Age: 0s ago."
            },
            {
                "label": "Audience geography",
                "value": "Not captured yet",
                "tone": "unknown",
                "detail": "Audience mix is estimated from available signals rather than first-party audience logs."
            }
        ],
        "section_notes": {
            "audience": "Audience geography is estimated from category, country, traffic mix, and brand signals until first-party audience data is collected.",
            "keywords": "Top keywords are estimated from crawl language, brand, category, and visibility signals until tracked keyword snapshots are stored.",
            "history": "Rank history is estimated from the current profile because no stored history exists for this domain yet."
        },
        "base_weighted_score": 71,
        "fraud_clamp_penalty": 7,
        "final_score": 64
    },
    "insight_snapshot": {
        "version": 1,
        "generated_at": "2026-04-17T10:47:12+00:00",
        "domain": "rupertarzeian.com",
        "display_name": "Fountain pen blog",
        "is_tracked": false,
        "is_estimated": true,
        "overall_score": 64,
        "authority_score": 51,
        "trust_score": 80,
        "safety_score": 100,
        "fraud_score": 1,
        "confidence_score": 53,
        "traffic_confidence": 69,
        "last_crawled_at": "2026-04-01 02:06:50",
        "crawl_blocked": false,
        "summary": "rupertarzeian.com currently scores 64/100. The score is being shaped by a mixed signal profile rather than one dominant factor. Evidence confidence is moderate, so the score should settle further after more crawl depth or registry checks. This is an estimated profile rather than a manually tracked one. Crawler access looks clean.",
        "badges": [
            {
                "label": "Profile",
                "value": "Estimated profile",
                "tone": "unknown",
                "detail": null
            },
            {
                "label": "Evidence confidence",
                "value": "Moderate confidence",
                "tone": "caution",
                "detail": "53/100"
            },
            {
                "label": "Traffic confidence",
                "value": "Solid confidence",
                "tone": "good",
                "detail": "69/100"
            },
            {
                "label": "Crawler access",
                "value": "Clean visibility",
                "tone": "good",
                "detail": null
            }
        ],
        "top_positive_signals": [
            "Established domain age: 9.2 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "Search evidence is broad enough to classify with better confidence.",
            "Registry history looks stable, which supports legitimacy and trust."
        ],
        "top_risk_signals": [
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting."
        ],
        "freshness": [
            {
                "label": "Crawl evidence",
                "value": "2026-04-01 02:06:50",
                "tone": "risk",
                "detail": "Crawl and page content sample. Age: 16d ago."
            },
            {
                "label": "WHOIS snapshot",
                "value": "2026-04-01 02:06:48",
                "tone": "risk",
                "detail": "Registry profile and stability signals. Age: 16d ago."
            },
            {
                "label": "Keyword view",
                "value": "2026-04-17 10:47:12",
                "tone": "good",
                "detail": "Estimated visibility until tracked keyword snapshots exist. Age: 0s ago."
            },
            {
                "label": "Rank history",
                "value": "2026-04-17 10:47:12",
                "tone": "good",
                "detail": "Estimated trend derived from current profile and crawl signals. Age: 0s ago."
            },
            {
                "label": "Audience geography",
                "value": "Not captured yet",
                "tone": "unknown",
                "detail": "Audience mix is estimated from available signals rather than first-party audience logs."
            }
        ],
        "top_tags": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown"
            }
        ]
    },
    "is_tracked": false,
    "is_estimated": true,
    "live_state": {
        "status": "processing",
        "status_label": "Cache build running",
        "message": "The refreshed page cache is still being built for this domain.",
        "updated_at": "2026-04-17T14:42:10+00:00"
    },
    "refresh_state": {
        "canRequest": false,
        "queued": true,
        "processing": true,
        "stageKey": "cache-queued",
        "stageLabel": "Cache build running",
        "cooldownUntil": null,
        "message": "The refreshed page cache is still being built for this domain.",
        "action": "/domain/rupertarzeian.com/refresh",
        "isGuestCooldown": false,
        "cooldownSeconds": 0
    },
    "urlscan_report": {
        "domain": "rupertarzeian.com",
        "status": "idle",
        "submitted_at": null,
        "completed_at": null,
        "last_checked_at": null,
        "last_error": "",
        "submitted_url": "https://rupertarzeian.com/",
        "uuid": "",
        "result_url": "",
        "api_result_url": "",
        "visibility": "public",
        "summary": "No urlscan.io report has been requested for this domain yet.",
        "report": [],
        "report_summary": [],
        "is_fresh": false,
        "can_retry": true,
        "poll_after_seconds": 20
    }
}