- title:: LLM Pack forfaitdeal
- payload
- {
“site”: “forfaitdeal”,
“context_pack”: {
“site_key”: “forfaitdeal”,
“task”: “logseq export”,
“lessons”: [
{
“id”: 122,
“site_key”: “forfaitdeal”,
“category”: “ctr_optimization”,
“lesson”: “Several visible pages have low CTR. Prioritize title, meta description, and intent alignment refreshes before creating net new content.”,
“confidence”: “high”,
“source”: “feedback_loop”,
“status”: “validated”,
“details_json”: {
“pages”: [
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/comparatif-abonnement-mobile-suisse”,
“clicks”: 0,
“position”: 16.33064516129032,
“top_query”: “comparatif abonnement mobile suisse”,
“impressions”: 124
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/abonnement-mobile”,
“clicks”: 0,
“position”: 33.90588235294118,
“top_query”: “comparateur forfait mobile suisse”,
“impressions”: 85
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-suisse-roaming-europe”,
“clicks”: 0,
“position”: 19.6625,
“top_query”: “roaming suisse”,
“impressions”: 80
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”,
“clicks”: 0,
“position”: 9.794117647058824,
“top_query”: “forfait mobile 5g”,
“impressions”: 68
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-sans-engagement-suisse”,
“clicks”: 0,
“position”: 31.78787878787879,
“top_query”: “comparatif abonnement mobile suisse”,
“impressions”: 33
}
]
},
“created_at”: “2026-05-15 00:00:18.603412+00:00”,
“updated_at”: “2026-05-15 00:00:19.225649+00:00”,
“details”: {
“pages”: [
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/comparatif-abonnement-mobile-suisse”,
“clicks”: 0,
“position”: 16.33064516129032,
“top_query”: “comparatif abonnement mobile suisse”,
“impressions”: 124
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/abonnement-mobile”,
“clicks”: 0,
“position”: 33.90588235294118,
“top_query”: “comparateur forfait mobile suisse”,
“impressions”: 85
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-suisse-roaming-europe”,
“clicks”: 0,
“position”: 19.6625,
“top_query”: “roaming suisse”,
“impressions”: 80
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”,
“clicks”: 0,
“position”: 9.794117647058824,
“top_query”: “forfait mobile 5g”,
“impressions”: 68
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-sans-engagement-suisse”,
“clicks”: 0,
“position”: 31.78787878787879,
“top_query”: “comparatif abonnement mobile suisse”,
“impressions”: 33
}
]
}
},
{
“id”: 84,
“site_key”: “forfaitdeal”,
“category”: “throughput”,
“lesson”: “Queue pressure is high. Reduce draft generation and prioritize review, refresh, and publishing throughput.”,
“confidence”: “high”,
“source”: “feedback_loop”,
“status”: “validated”,
“details_json”: {
“failed_count”: 0,
“queued_count”: 5
},
“created_at”: “2026-05-04 00:00:17.019909+00:00”,
“updated_at”: “2026-05-04 00:00:17.572122+00:00”,
“details”: {
“failed_count”: 0,
“queued_count”: 5
}
}
],
“sops”: [
{
“id”: 79,
“site_key”: “forfaitdeal”,
“scope”: “site”,
“name”: “adaptive-feedback-playbook”,
“version”: 18,
“status”: “validated”,
“content”: “1. Sync and review the latest GSC and queue feedback before planning new work.\n2. If low-CTR pages exist with meaningful impressions, prioritize refreshes before net new drafts.\n3. If the queue is saturated, shift effort from generation to review, optimization, and publishing throughput.\n4. If failures or weak publish outcomes exist, add a verification step before production actions.\n5. Re-measure outcomes after each major SEO action and log the result back into memory.”,
“source”: “feedback_loop”,
“created_at”: “2026-05-14 00:01:43.369783+00:00”,
“updated_at”: “2026-05-15 00:00:19.268718+00:00”,
“confidence_score”: 0,
“confidence_label”: “low”
}
],
“recent_memory”: [
{
“id”: 130,
“site_key”: “forfaitdeal”,
“category”: “routine”,
“action”: “content_pipeline”,
“target”: “roaming-suisse”,
“outcome”: “failed”,
“quality”: “good”,
“details_json”: {
“draft”: {
“path”: “/root/agents/seo-agent/data/drafts/generated/forfaitdeal/roaming-suisse.json”,
“slug”: “roaming-suisse”,
“title”: “Roaming suisse : que faut-il vraiment vérifier en 2026 ?”,
“quality”: {
“ok”: true,
“issues”: [],
“warnings”: [],
“section_count”: 11,
“content_length”: 9770
}
},
“topic”: “roaming suisse”,
“enqueue”: {
“id”: 230,
“slug”: “roaming-suisse”,
“status”: “failed”,
“site_key”: “forfaitdeal”,
“published_at”: null,
“scheduled_at”: “2026-05-13T07:00:00+00:00”
}
},
“recorded_at”: “2026-05-15 00:00:58.434674+00:00”,
“details”: {
“draft”: {
“path”: “/root/agents/seo-agent/data/drafts/generated/forfaitdeal/roaming-suisse.json”,
“slug”: “roaming-suisse”,
“title”: “Roaming suisse : que faut-il vraiment vérifier en 2026 ?”,
“quality”: {
“ok”: true,
“issues”: [],
“warnings”: [],
“section_count”: 11,
“content_length”: 9770
}
},
“topic”: “roaming suisse”,
“enqueue”: {
“id”: 230,
“slug”: “roaming-suisse”,
“status”: “failed”,
“site_key”: “forfaitdeal”,
“published_at”: null,
“scheduled_at”: “2026-05-13T07:00:00+00:00”
}
}
},
{
“id”: 129,
“site_key”: “forfaitdeal”,
“category”: “routine”,
“action”: “content_pipeline”,
“target”: “roaming-suisse-forfait”,
“outcome”: “scheduled”,
“quality”: “good”,
“details_json”: {
“draft”: {
“path”: “/root/agents/seo-agent/data/drafts/generated/forfaitdeal/roaming-suisse-forfait.json”,
“slug”: “roaming-suisse-forfait”,
“title”: “Roaming suisse forfait : que faut-il vraiment vérifier en 2026 ?”,
“quality”: {
“ok”: true,
“issues”: [],
“warnings”: [],
“section_count”: 11,
“content_length”: 9993
}
},
“topic”: “roaming suisse forfait”,
“enqueue”: {
“id”: 18,
“slug”: “roaming-suisse-forfait”,
“status”: “scheduled”,
“site_key”: “forfaitdeal”,
“published_at”: “2026-05-02”,
“scheduled_at”: “2026-05-15T07:00:00+00:00”
}
},
“recorded_at”: “2026-05-15 00:00:40.399283+00:00”,
“details”: {
“draft”: {
“path”: “/root/agents/seo-agent/data/drafts/generated/forfaitdeal/roaming-suisse-forfait.json”,
“slug”: “roaming-suisse-forfait”,
“title”: “Roaming suisse forfait : que faut-il vraiment vérifier en 2026 ?”,
“quality”: {
“ok”: true,
“issues”: [],
“warnings”: [],
“section_count”: 11,
“content_length”: 9993
}
},
“topic”: “roaming suisse forfait”,
“enqueue”: {
“id”: 18,
“slug”: “roaming-suisse-forfait”,
“status”: “scheduled”,
“site_key”: “forfaitdeal”,
“published_at”: “2026-05-02”,
“scheduled_at”: “2026-05-15T07:00:00+00:00”
}
}
},
{
“id”: 128,
“site_key”: “forfaitdeal”,
“category”: “routine”,
“action”: “content_pipeline”,
“target”: “meilleur-forfait-mobile-suisse”,
“outcome”: “scheduled”,
“quality”: “good”,
“details_json”: {
“draft”: {
“path”: “/root/agents/seo-agent/data/drafts/generated/forfaitdeal/meilleur-forfait-mobile-suisse.json”,
“slug”: “meilleur-forfait-mobile-suisse”,
“title”: “Meilleur forfait mobile suisse : faut-il vraiment payer plus en 2026”,
“quality”: {
“ok”: true,
“issues”: [],
“warnings”: [],
“section_count”: 11,
“content_length”: 10199
}
},
“topic”: “meilleur forfait mobile suisse”,
“enqueue”: {
“id”: 17,
“slug”: “meilleur-forfait-mobile-suisse”,
“status”: “scheduled”,
“site_key”: “forfaitdeal”,
“published_at”: “2026-05-02”,
“scheduled_at”: “2026-05-15T07:00:00+00:00”
}
},
“recorded_at”: “2026-05-15 00:00:40.236958+00:00”,
“details”: {
“draft”: {
“path”: “/root/agents/seo-agent/data/drafts/generated/forfaitdeal/meilleur-forfait-mobile-suisse.json”,
“slug”: “meilleur-forfait-mobile-suisse”,
“title”: “Meilleur forfait mobile suisse : faut-il vraiment payer plus en 2026”,
“quality”: {
“ok”: true,
“issues”: [],
“warnings”: [],
“section_count”: 11,
“content_length”: 10199
}
},
“topic”: “meilleur forfait mobile suisse”,
“enqueue”: {
“id”: 17,
“slug”: “meilleur-forfait-mobile-suisse”,
“status”: “scheduled”,
“site_key”: “forfaitdeal”,
“published_at”: “2026-05-02”,
“scheduled_at”: “2026-05-15T07:00:00+00:00”
}
}
},
{
“id”: 127,
“site_key”: “forfaitdeal”,
“category”: “routine”,
“action”: “content_pipeline”,
“target”: “comparatif-forfait-mobile-suisse”,
“outcome”: “scheduled”,
“quality”: “good”,
“details_json”: {
“draft”: {
“path”: “/root/agents/seo-agent/data/drafts/generated/forfaitdeal/comparatif-forfait-mobile-suisse.json”,
“slug”: “comparatif-forfait-mobile-suisse”,
“title”: “Comparatif forfait mobile suisse : faut-il vraiment payer plus en”,
“quality”: {
“ok”: true,
“issues”: [],
“warnings”: [],
“section_count”: 11,
“content_length”: 10249
}
},
“topic”: “comparatif forfait mobile suisse”,
“enqueue”: {
“id”: 15,
“slug”: “comparatif-forfait-mobile-suisse”,
“status”: “scheduled”,
“site_key”: “forfaitdeal”,
“published_at”: “2026-05-02”,
“scheduled_at”: “2026-05-15T07:00:00+00:00”
}
},
“recorded_at”: “2026-05-15 00:00:29.950563+00:00”,
“details”: {
“draft”: {
“path”: “/root/agents/seo-agent/data/drafts/generated/forfaitdeal/comparatif-forfait-mobile-suisse.json”,
“slug”: “comparatif-forfait-mobile-suisse”,
“title”: “Comparatif forfait mobile suisse : faut-il vraiment payer plus en”,
“quality”: {
“ok”: true,
“issues”: [],
“warnings”: [],
“section_count”: 11,
“content_length”: 10249
}
},
“topic”: “comparatif forfait mobile suisse”,
“enqueue”: {
“id”: 15,
“slug”: “comparatif-forfait-mobile-suisse”,
“status”: “scheduled”,
“site_key”: “forfaitdeal”,
“published_at”: “2026-05-02”,
“scheduled_at”: “2026-05-15T07:00:00+00:00”
}
}
},
{
“id”: 126,
“site_key”: “forfaitdeal”,
“category”: “routine”,
“action”: “content_pipeline”,
“target”: “forfait-mobile-suisse”,
“outcome”: “scheduled”,
“quality”: “good”,
“details_json”: {
“draft”: {
“path”: “/root/agents/seo-agent/data/drafts/generated/forfaitdeal/forfait-mobile-suisse.json”,
“slug”: “forfait-mobile-suisse”,
“title”: “Forfait mobile suisse : faut-il vraiment payer plus en 2026 ?”,
“quality”: {
“ok”: true,
“issues”: [],
“warnings”: [],
“section_count”: 11,
“content_length”: 9974
}
},
“topic”: “forfait mobile suisse”,
“enqueue”: {
“id”: 16,
“slug”: “forfait-mobile-suisse”,
“status”: “scheduled”,
“site_key”: “forfaitdeal”,
“published_at”: “2026-05-02”,
“scheduled_at”: “2026-05-15T07:00:00+00:00”
}
},
“recorded_at”: “2026-05-15 00:00:19.687363+00:00”,
“details”: {
“draft”: {
“path”: “/root/agents/seo-agent/data/drafts/generated/forfaitdeal/forfait-mobile-suisse.json”,
“slug”: “forfait-mobile-suisse”,
“title”: “Forfait mobile suisse : faut-il vraiment payer plus en 2026 ?”,
“quality”: {
“ok”: true,
“issues”: [],
“warnings”: [],
“section_count”: 11,
“content_length”: 9974
}
},
“topic”: “forfait mobile suisse”,
“enqueue”: {
“id”: 16,
“slug”: “forfait-mobile-suisse”,
“status”: “scheduled”,
“site_key”: “forfaitdeal”,
“published_at”: “2026-05-02”,
“scheduled_at”: “2026-05-15T07:00:00+00:00”
}
}
},
{
“id”: 125,
“site_key”: “forfaitdeal”,
“category”: “routine”,
“action”: “daily_feedback_learning”,
“target”: “forfaitdeal”,
“outcome”: “2 lessons derived”,
“quality”: “good”,
“details_json”: {
“sop”: {
“sop”: {
“id”: 79,
“name”: “adaptive-feedback-playbook”,
“scope”: “site”,
“source”: “feedback_loop”,
“status”: “draft”,
“content”: “1. Sync and review the latest GSC and queue feedback before planning new work.\n2. If low-CTR pages exist with meaningful impressions, prioritize refreshes before net new drafts.\n3. If the queue is saturated, shift effort from generation to review, optimization, and publishing throughput.\n4. If failures or weak publish outcomes exist, add a verification step before production actions.\n5. Re-measure outcomes after each major SEO action and log the result back into memory.”,
“version”: 18,
“site_key”: “forfaitdeal”,
“created_at”: “2026-05-14 00:01:43.369783+00:00”,
“updated_at”: “2026-05-15 00:00:18.732465+00:00”,
“confidence_label”: “low”,
“confidence_score”: 0
},
“evidence”: {
“lesson_count”: 20,
“outcome_count”: 10,
“observation_count”: 10
},
“site_key”: “forfaitdeal”
},
“feedback”: {
“site_key”: “forfaitdeal”,
“gsc_pages”: 9,
“queue_rows”: 17,
“gsc_queries”: 51,
“workflow_events”: 50
},
“business_feedback”: {
“crawler”: {
“ideas”: [],
“issues”: [],
“message”: “Erreur reseau Crawler MCP sur http://127.0.0.1:8866/mcp: HTTPConnectionPool(host=‘127.0.0.1’, port=8866): Max retries exceeded with url: /mcp (Caused by NewConnectionError(‘<urllib3.connection.HTTPConnection object at 0x7adf8fdaee40>: Failed to establish a new connection: [Errno 111] Connection refused’))”,
“crawl_ok”: false,
“acquisition_ok”: false
},
“linkmap”: {
“result”: {},
“message”: “Outil LinkMap introuvable pour pagerank.”,
“pagerank_ok”: false,
“strategy_ok”: false
},
“site_key”: “forfaitdeal”,
“available”: true,
“seo_panel”: {
“alerts”: [],
“message”: “Erreur reseau SEO Panel MCP sur http://127.0.0.1:8865/mcp: HTTPConnectionPool(host=‘127.0.0.1’, port=8865): Max retries exceeded with url: /mcp (Caused by NewConnectionError(‘<urllib3.connection.HTTPConnection object at 0x7adf8fd9ee10>: Failed to establish a new connection: [Errno 111] Connection refused’))”,
“alerts_ok”: false,
“overview_ok”: false,
“health_score”: null
},
“project_name”: “ForfaitDeal”
}
},
“recorded_at”: “2026-05-15 00:00:19.142790+00:00”,
“details”: {
“sop”: {
“sop”: {
“id”: 79,
“name”: “adaptive-feedback-playbook”,
“scope”: “site”,
“source”: “feedback_loop”,
“status”: “draft”,
“content”: “1. Sync and review the latest GSC and queue feedback before planning new work.\n2. If low-CTR pages exist with meaningful impressions, prioritize refreshes before net new drafts.\n3. If the queue is saturated, shift effort from generation to review, optimization, and publishing throughput.\n4. If failures or weak publish outcomes exist, add a verification step before production actions.\n5. Re-measure outcomes after each major SEO action and log the result back into memory.”,
“version”: 18,
“site_key”: “forfaitdeal”,
“created_at”: “2026-05-14 00:01:43.369783+00:00”,
“updated_at”: “2026-05-15 00:00:18.732465+00:00”,
“confidence_label”: “low”,
“confidence_score”: 0
},
“evidence”: {
“lesson_count”: 20,
“outcome_count”: 10,
“observation_count”: 10
},
“site_key”: “forfaitdeal”
},
“feedback”: {
“site_key”: “forfaitdeal”,
“gsc_pages”: 9,
“queue_rows”: 17,
“gsc_queries”: 51,
“workflow_events”: 50
},
“business_feedback”: {
“crawler”: {
“ideas”: [],
“issues”: [],
“message”: “Erreur reseau Crawler MCP sur http://127.0.0.1:8866/mcp: HTTPConnectionPool(host=‘127.0.0.1’, port=8866): Max retries exceeded with url: /mcp (Caused by NewConnectionError(‘<urllib3.connection.HTTPConnection object at 0x7adf8fdaee40>: Failed to establish a new connection: [Errno 111] Connection refused’))”,
“crawl_ok”: false,
“acquisition_ok”: false
},
“linkmap”: {
“result”: {},
“message”: “Outil LinkMap introuvable pour pagerank.”,
“pagerank_ok”: false,
“strategy_ok”: false
},
“site_key”: “forfaitdeal”,
“available”: true,
“seo_panel”: {
“alerts”: [],
“message”: “Erreur reseau SEO Panel MCP sur http://127.0.0.1:8865/mcp: HTTPConnectionPool(host=‘127.0.0.1’, port=8865): Max retries exceeded with url: /mcp (Caused by NewConnectionError(‘<urllib3.connection.HTTPConnection object at 0x7adf8fd9ee10>: Failed to establish a new connection: [Errno 111] Connection refused’))”,
“alerts_ok”: false,
“overview_ok”: false,
“health_score”: null
},
“project_name”: “ForfaitDeal”
}
}
},
{
“id”: 122,
“site_key”: “forfaitdeal”,
“category”: “routine”,
“action”: “content_pipeline”,
“target”: “roaming-suisse”,
“outcome”: “failed”,
“quality”: “good”,
“details_json”: {
“draft”: {
“path”: “/root/agents/seo-agent/data/drafts/generated/forfaitdeal/roaming-suisse.json”,
“slug”: “roaming-suisse”,
“title”: “Roaming suisse : que faut-il vraiment vérifier en 2026 ?”,
“quality”: {
“ok”: true,
“issues”: [],
“warnings”: [],
“section_count”: 11,
“content_length”: 9770
}
},
“topic”: “roaming suisse”,
“enqueue”: {
“id”: 230,
“slug”: “roaming-suisse”,
“status”: “failed”,
“site_key”: “forfaitdeal”,
“published_at”: null,
“scheduled_at”: “2026-05-13T07:00:00+00:00”
}
},
“recorded_at”: “2026-05-14 00:02:17.193176+00:00”,
“details”: {
“draft”: {
“path”: “/root/agents/seo-agent/data/drafts/generated/forfaitdeal/roaming-suisse.json”,
“slug”: “roaming-suisse”,
“title”: “Roaming suisse : que faut-il vraiment vérifier en 2026 ?”,
“quality”: {
“ok”: true,
“issues”: [],
“warnings”: [],
“section_count”: 11,
“content_length”: 9770
}
},
“topic”: “roaming suisse”,
“enqueue”: {
“id”: 230,
“slug”: “roaming-suisse”,
“status”: “failed”,
“site_key”: “forfaitdeal”,
“published_at”: null,
“scheduled_at”: “2026-05-13T07:00:00+00:00”
}
}
}
],
“recent_outcomes”: [
{
“id”: 153,
“site_key”: “forfaitdeal”,
“outcome_type”: “gsc_baseline”,
“subject_key”: “publish:roaming-suisse”,
“metric_name”: “position”,
“metric_value”: 0.0,
“payload_json”: {
“row”: {},
“page_url”: “https://www.forfaitdeal.ch/blog/roaming-suisse”
},
“recorded_at”: “2026-05-13 09:00:56.410086+00:00”,
“payload”: {
“row”: {},
“page_url”: “https://www.forfaitdeal.ch/blog/roaming-suisse”
}
},
{
“id”: 152,
“site_key”: “forfaitdeal”,
“outcome_type”: “gsc_baseline”,
“subject_key”: “publish:roaming-suisse”,
“metric_name”: “ctr”,
“metric_value”: 0.0,
“payload_json”: {
“row”: {},
“page_url”: “https://www.forfaitdeal.ch/blog/roaming-suisse”
},
“recorded_at”: “2026-05-13 09:00:56.395728+00:00”,
“payload”: {
“row”: {},
“page_url”: “https://www.forfaitdeal.ch/blog/roaming-suisse”
}
},
{
“id”: 151,
“site_key”: “forfaitdeal”,
“outcome_type”: “gsc_baseline”,
“subject_key”: “publish:roaming-suisse”,
“metric_name”: “impressions”,
“metric_value”: 0.0,
“payload_json”: {
“row”: {},
“page_url”: “https://www.forfaitdeal.ch/blog/roaming-suisse”
},
“recorded_at”: “2026-05-13 09:00:56.382296+00:00”,
“payload”: {
“row”: {},
“page_url”: “https://www.forfaitdeal.ch/blog/roaming-suisse”
}
},
{
“id”: 150,
“site_key”: “forfaitdeal”,
“outcome_type”: “gsc_baseline”,
“subject_key”: “publish:roaming-suisse”,
“metric_name”: “clicks”,
“metric_value”: 0.0,
“payload_json”: {
“row”: {},
“page_url”: “https://www.forfaitdeal.ch/blog/roaming-suisse”
},
“recorded_at”: “2026-05-13 09:00:56.367485+00:00”,
“payload”: {
“row”: {},
“page_url”: “https://www.forfaitdeal.ch/blog/roaming-suisse”
}
},
{
“id”: 119,
“site_key”: “forfaitdeal”,
“outcome_type”: “seo_experiment_result”,
“subject_key”: “content-refresh:forfait-mobile-5g-suisse”,
“metric_name”: “position”,
“metric_value”: 9.31578947368421,
“payload_json”: {
“delta”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 9.31578947368421,
“impressions”: 57.0
},
“success”: false,
“conclusion”: “rejected”,
“hypothesis”: {
“slug”: “forfait-mobile-5g-suisse”,
“query”: “comparatif abonnement mobile suisse”,
“autonomy”: “auto_correctable”,
“baseline”: {
“ctr”: 0.01,
“clicks”: 1,
“position”: 10.6,
“impressions”: 100
},
“site_key”: “forfaitdeal”,
“reasoning”: [
“position proche d’un gain SEO (10.6)”,
“potentiel impression détecté (100)”,
“perte de clics probable: CTR 1.00% pour 100 impressions”,
“la page capte déjà des clics (1)”,
“écart concurrentiel aligné avec la requête”
],
“risk_level”: “medium”,
“action_type”: “content_refresh”,
“playbook_id”: “gain_position”,
“playbook_name”: “Gagner des positions”,
“primary_metric”: “position”,
“secondary_metrics”: [
“clicks”,
“impressions”,
“query_coverage”
],
“expected_direction”: “decrease”
},
“impact_label”: “negative”,
“primary_metric_delta”: 9.31578947368421
},
“recorded_at”: “2026-05-09 17:07:02.348363+00:00”,
“payload”: {
“delta”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 9.31578947368421,
“impressions”: 57.0
},
“success”: false,
“conclusion”: “rejected”,
“hypothesis”: {
“slug”: “forfait-mobile-5g-suisse”,
“query”: “comparatif abonnement mobile suisse”,
“autonomy”: “auto_correctable”,
“baseline”: {
“ctr”: 0.01,
“clicks”: 1,
“position”: 10.6,
“impressions”: 100
},
“site_key”: “forfaitdeal”,
“reasoning”: [
“position proche d’un gain SEO (10.6)”,
“potentiel impression détecté (100)”,
“perte de clics probable: CTR 1.00% pour 100 impressions”,
“la page capte déjà des clics (1)”,
“écart concurrentiel aligné avec la requête”
],
“risk_level”: “medium”,
“action_type”: “content_refresh”,
“playbook_id”: “gain_position”,
“playbook_name”: “Gagner des positions”,
“primary_metric”: “position”,
“secondary_metrics”: [
“clicks”,
“impressions”,
“query_coverage”
],
“expected_direction”: “decrease”
},
“impact_label”: “negative”,
“primary_metric_delta”: 9.31578947368421
}
}
],
“recent_observations”: [
{
“id”: 645,
“site_key”: “forfaitdeal”,
“source_type”: “workflow_state”,
“subject_key”: “recent_events”,
“payload_json”: {
“events”: [
{
“type”: “gsc_sync”,
“payload”: {
“pages_7d”: 7,
“pages_28d”: 9,
“queries_7d”: 23,
“queries_28d”: 50,
“page_query_28d”: 62
},
“recorded_at”: “2026-05-13T18:15:05.526163Z”
},
{
“type”: “hermes_daily_feedback_learning”,
“payload”: {
“sop_name”: “adaptive-feedback-playbook”,
“lessons_created”: 2
},
“recorded_at”: “2026-05-14T00:01:43.515602Z”
},
{
“type”: “hermes_content_pipeline”,
“payload”: {
“slug”: “forfait-mobile-suisse”,
“topic”: “forfait mobile suisse”,
“queue_status”: “scheduled”
},
“recorded_at”: “2026-05-14T00:01:43.777468Z”
},
{
“type”: “hermes_content_pipeline”,
“payload”: {
“slug”: “comparatif-forfait-mobile-suisse”,
“topic”: “comparatif forfait mobile suisse”,
“queue_status”: “scheduled”
},
“recorded_at”: “2026-05-14T00:01:53.924830Z”
},
{
“type”: “hermes_content_pipeline”,
“payload”: {
“slug”: “meilleur-forfait-mobile-suisse”,
“topic”: “meilleur forfait mobile suisse”,
“queue_status”: “scheduled”
},
“recorded_at”: “2026-05-14T00:01:54.099293Z”
},
{
“type”: “hermes_content_pipeline”,
“payload”: {
“slug”: “roaming-suisse-forfait”,
“topic”: “roaming suisse forfait”,
“queue_status”: “scheduled”
},
“recorded_at”: “2026-05-14T00:02:04.315706Z”
},
{
“type”: “hermes_content_pipeline”,
“payload”: {
“slug”: “roaming-suisse”,
“topic”: “roaming suisse”,
“queue_status”: “failed”
},
“recorded_at”: “2026-05-14T00:02:17.180275Z”
},
{
“type”: “gsc_sync”,
“payload”: {
“pages_7d”: 6,
“pages_28d”: 9,
“queries_7d”: 19,
“queries_28d”: 50,
“page_query_28d”: 62
},
“recorded_at”: “2026-05-14T06:15:05.423007Z”
},
{
“type”: “gsc_sync”,
“payload”: {
“pages_7d”: 8,
“pages_28d”: 9,
“queries_7d”: 20,
“queries_28d”: 51,
“page_query_28d”: 64
},
“recorded_at”: “2026-05-14T12:15:06.626085Z”
},
{
“type”: “gsc_sync”,
“payload”: {
“pages_7d”: 8,
“pages_28d”: 9,
“queries_7d”: 20,
“queries_28d”: 51,
“page_query_28d”: 64
},
“recorded_at”: “2026-05-14T18:15:05.832791Z”
}
]
},
“recorded_at”: “2026-05-15 00:00:16.286220+00:00”,
“payload”: {
“events”: [
{
“type”: “gsc_sync”,
“payload”: {
“pages_7d”: 7,
“pages_28d”: 9,
“queries_7d”: 23,
“queries_28d”: 50,
“page_query_28d”: 62
},
“recorded_at”: “2026-05-13T18:15:05.526163Z”
},
{
“type”: “hermes_daily_feedback_learning”,
“payload”: {
“sop_name”: “adaptive-feedback-playbook”,
“lessons_created”: 2
},
“recorded_at”: “2026-05-14T00:01:43.515602Z”
},
{
“type”: “hermes_content_pipeline”,
“payload”: {
“slug”: “forfait-mobile-suisse”,
“topic”: “forfait mobile suisse”,
“queue_status”: “scheduled”
},
“recorded_at”: “2026-05-14T00:01:43.777468Z”
},
{
“type”: “hermes_content_pipeline”,
“payload”: {
“slug”: “comparatif-forfait-mobile-suisse”,
“topic”: “comparatif forfait mobile suisse”,
“queue_status”: “scheduled”
},
“recorded_at”: “2026-05-14T00:01:53.924830Z”
},
{
“type”: “hermes_content_pipeline”,
“payload”: {
“slug”: “meilleur-forfait-mobile-suisse”,
“topic”: “meilleur forfait mobile suisse”,
“queue_status”: “scheduled”
},
“recorded_at”: “2026-05-14T00:01:54.099293Z”
},
{
“type”: “hermes_content_pipeline”,
“payload”: {
“slug”: “roaming-suisse-forfait”,
“topic”: “roaming suisse forfait”,
“queue_status”: “scheduled”
},
“recorded_at”: “2026-05-14T00:02:04.315706Z”
},
{
“type”: “hermes_content_pipeline”,
“payload”: {
“slug”: “roaming-suisse”,
“topic”: “roaming suisse”,
“queue_status”: “failed”
},
“recorded_at”: “2026-05-14T00:02:17.180275Z”
},
{
“type”: “gsc_sync”,
“payload”: {
“pages_7d”: 6,
“pages_28d”: 9,
“queries_7d”: 19,
“queries_28d”: 50,
“page_query_28d”: 62
},
“recorded_at”: “2026-05-14T06:15:05.423007Z”
},
{
“type”: “gsc_sync”,
“payload”: {
“pages_7d”: 8,
“pages_28d”: 9,
“queries_7d”: 20,
“queries_28d”: 51,
“page_query_28d”: 64
},
“recorded_at”: “2026-05-14T12:15:06.626085Z”
},
{
“type”: “gsc_sync”,
“payload”: {
“pages_7d”: 8,
“pages_28d”: 9,
“queries_7d”: 20,
“queries_28d”: 51,
“page_query_28d”: 64
},
“recorded_at”: “2026-05-14T18:15:05.832791Z”
}
]
}
},
{
“id”: 644,
“site_key”: “forfaitdeal”,
“source_type”: “queue_state”,
“subject_key”: “recent_queue”,
“payload_json”: {
“recent_rows”: [
{
“id”: 230,
“slug”: “roaming-suisse”,
“error”: “Vercel: ERROR — Command “npm run build” exited with 1\nLogs : https://vercel.com/anges-projects-a4da2420/comparateur-mobile/6gck8h49Ck4eZgEk5V5jpb84HTJ9”,
“status”: “failed”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: null,
“scheduled_at”: “2026-05-13T07:00:00+00:00”
},
{
“id”: 103,
“slug”: “forfait-mobile-famille-suisse”,
“error”: “Vercel: ERROR — Command “npm run build” exited with 1\nLogs : https://vercel.com/anges-projects-a4da2420/comparateur-mobile/Dd6FLxAvJ7UjydbnkhWKSuJ3XJtC”,
“status”: “failed”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: null,
“scheduled_at”: “2026-05-08T07:00:00+00:00”
},
{
“id”: 102,
“slug”: “portabilite-numero-mobile-suisse”,
“error”: “Vercel: ERROR — Command “npm run build” exited with 1\nLogs : https://vercel.com/anges-projects-a4da2420/comparateur-mobile/6zomyRRv68WhLxRpiJFMtjmgsxPP”,
“status”: “failed”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: null,
“scheduled_at”: “2026-05-07T07:00:00+00:00”
},
{
“id”: 101,
“slug”: “swisscom-resiliation-abonnement”,
“error”: “Vercel: ERROR — Command “npm run build” exited with 1\nLogs : https://vercel.com/anges-projects-a4da2420/comparateur-mobile/GNScGHTdsrig2WoRZQsoutLjsMXq”,
“status”: “failed”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: null,
“scheduled_at”: “2026-05-06T07:00:00+00:00”
},
{
“id”: 100,
“slug”: “quel-abonnement-swisscom-choisir”,
“error”: “Vercel: ERROR — Command “npm run build” exited with 1\nLogs : https://vercel.com/anges-projects-a4da2420/comparateur-mobile/bT9eWtPkK875DkLHcj1vV21i7xC7”,
“status”: “failed”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: null,
“scheduled_at”: “2026-05-05T07:00:00+00:00”
},
{
“id”: 99,
“slug”: “mvno-swisscom”,
“error”: “Vercel: ERROR — Command “npm run build” exited with 1\nLogs : https://vercel.com/anges-projects-a4da2420/comparateur-mobile/34hpo31aSd4WgYCmgXXpepK453Hq”,
“status”: “failed”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: null,
“scheduled_at”: “2026-05-04T07:00:00+00:00”
},
{
“id”: 89,
“slug”: “comparatif-abonnement-mobile-suisse”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-04-21”,
“scheduled_at”: null
},
{
“id”: 88,
“slug”: “abonnement-mobile”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-03-31”,
“scheduled_at”: null
},
{
“id”: 23,
“slug”: “forfait-mobile-suisse-roaming-europe”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-04-21”,
“scheduled_at”: null
},
{
“id”: 22,
“slug”: “forfait-mobile-sans-engagement-suisse”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-04-21”,
“scheduled_at”: null
},
{
“id”: 21,
“slug”: “forfait-mobile-5g-suisse”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-04-21”,
“scheduled_at”: null
},
{
“id”: 20,
“slug”: “forfait-esim-suisse”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-04-21”,
“scheduled_at”: null
},
{
“id”: 19,
“slug”: “forfait-data-suisse”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-04-21”,
“scheduled_at”: null
},
{
“id”: 18,
“slug”: “roaming-suisse-forfait”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-05-02”,
“scheduled_at”: null
},
{
“id”: 17,
“slug”: “meilleur-forfait-mobile-suisse”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-05-02”,
“scheduled_at”: null
},
{
“id”: 16,
“slug”: “forfait-mobile-suisse”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-05-02”,
“scheduled_at”: null
},
{
“id”: 15,
“slug”: “comparatif-forfait-mobile-suisse”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-05-02”,
“scheduled_at”: null
}
]
},
“recorded_at”: “2026-05-15 00:00:16.266756+00:00”,
“payload”: {
“recent_rows”: [
{
“id”: 230,
“slug”: “roaming-suisse”,
“error”: “Vercel: ERROR — Command “npm run build” exited with 1\nLogs : https://vercel.com/anges-projects-a4da2420/comparateur-mobile/6gck8h49Ck4eZgEk5V5jpb84HTJ9”,
“status”: “failed”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: null,
“scheduled_at”: “2026-05-13T07:00:00+00:00”
},
{
“id”: 103,
“slug”: “forfait-mobile-famille-suisse”,
“error”: “Vercel: ERROR — Command “npm run build” exited with 1\nLogs : https://vercel.com/anges-projects-a4da2420/comparateur-mobile/Dd6FLxAvJ7UjydbnkhWKSuJ3XJtC”,
“status”: “failed”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: null,
“scheduled_at”: “2026-05-08T07:00:00+00:00”
},
{
“id”: 102,
“slug”: “portabilite-numero-mobile-suisse”,
“error”: “Vercel: ERROR — Command “npm run build” exited with 1\nLogs : https://vercel.com/anges-projects-a4da2420/comparateur-mobile/6zomyRRv68WhLxRpiJFMtjmgsxPP”,
“status”: “failed”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: null,
“scheduled_at”: “2026-05-07T07:00:00+00:00”
},
{
“id”: 101,
“slug”: “swisscom-resiliation-abonnement”,
“error”: “Vercel: ERROR — Command “npm run build” exited with 1\nLogs : https://vercel.com/anges-projects-a4da2420/comparateur-mobile/GNScGHTdsrig2WoRZQsoutLjsMXq”,
“status”: “failed”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: null,
“scheduled_at”: “2026-05-06T07:00:00+00:00”
},
{
“id”: 100,
“slug”: “quel-abonnement-swisscom-choisir”,
“error”: “Vercel: ERROR — Command “npm run build” exited with 1\nLogs : https://vercel.com/anges-projects-a4da2420/comparateur-mobile/bT9eWtPkK875DkLHcj1vV21i7xC7”,
“status”: “failed”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: null,
“scheduled_at”: “2026-05-05T07:00:00+00:00”
},
{
“id”: 99,
“slug”: “mvno-swisscom”,
“error”: “Vercel: ERROR — Command “npm run build” exited with 1\nLogs : https://vercel.com/anges-projects-a4da2420/comparateur-mobile/34hpo31aSd4WgYCmgXXpepK453Hq”,
“status”: “failed”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: null,
“scheduled_at”: “2026-05-04T07:00:00+00:00”
},
{
“id”: 89,
“slug”: “comparatif-abonnement-mobile-suisse”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-04-21”,
“scheduled_at”: null
},
{
“id”: 88,
“slug”: “abonnement-mobile”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-03-31”,
“scheduled_at”: null
},
{
“id”: 23,
“slug”: “forfait-mobile-suisse-roaming-europe”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-04-21”,
“scheduled_at”: null
},
{
“id”: 22,
“slug”: “forfait-mobile-sans-engagement-suisse”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-04-21”,
“scheduled_at”: null
},
{
“id”: 21,
“slug”: “forfait-mobile-5g-suisse”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-04-21”,
“scheduled_at”: null
},
{
“id”: 20,
“slug”: “forfait-esim-suisse”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-04-21”,
“scheduled_at”: null
},
{
“id”: 19,
“slug”: “forfait-data-suisse”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-04-21”,
“scheduled_at”: null
},
{
“id”: 18,
“slug”: “roaming-suisse-forfait”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-05-02”,
“scheduled_at”: null
},
{
“id”: 17,
“slug”: “meilleur-forfait-mobile-suisse”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-05-02”,
“scheduled_at”: null
},
{
“id”: 16,
“slug”: “forfait-mobile-suisse”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-05-02”,
“scheduled_at”: null
},
{
“id”: 15,
“slug”: “comparatif-forfait-mobile-suisse”,
“error”: null,
“status”: “published”,
“attempts”: 0,
“vercel_ok”: 0,
“gsc_indexed”: 0,
“published_at”: “2026-05-02”,
“scheduled_at”: null
}
]
}
},
{
“id”: 643,
“site_key”: “forfaitdeal”,
“source_type”: “gsc_snapshot”,
“subject_key”: “pages_28d”,
“payload_json”: {
“saved_at”: “2026-05-14T18:15:05.826379Z”,
“top_pages”: [
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/comparatif-abonnement-mobile-suisse”,
“clicks”: 0,
“position”: 16.33064516129032,
“top_query”: “comparatif abonnement mobile suisse”,
“impressions”: 124
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/abonnement-mobile”,
“clicks”: 0,
“position”: 33.90588235294118,
“top_query”: “comparateur forfait mobile suisse”,
“impressions”: 85
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-suisse-roaming-europe”,
“clicks”: 0,
“position”: 19.6625,
“top_query”: “roaming suisse”,
“impressions”: 80
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”,
“clicks”: 0,
“position”: 9.794117647058824,
“top_query”: “forfait mobile 5g”,
“impressions”: 68
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-sans-engagement-suisse”,
“clicks”: 0,
“position”: 31.78787878787879,
“top_query”: “comparatif abonnement mobile suisse”,
“impressions”: 33
}
],
“top_queries”: [
{
“ctr”: 0.0,
“query”: “comparatif abonnement mobile suisse”,
“clicks”: 0,
“position”: 30.666666666666668,
“impressions”: 27
},
{
“ctr”: 0.0,
“query”: “roaming suisse”,
“clicks”: 0,
“position”: 16.037037037037038,
“impressions”: 27
},
{
“ctr”: 0.0,
“query”: “comparateur forfait mobile suisse”,
“clicks”: 0,
“position”: 44.411764705882355,
“impressions”: 17
},
{
“ctr”: 0.0,
“query”: “abonnement mobile suisse comparatif”,
“clicks”: 0,
“position”: 27.46153846153846,
“impressions”: 13
},
{
“ctr”: 0.0,
“query”: “comparatif abonnement mobile”,
“clicks”: 0,
“position”: 18.25,
“impressions”: 12
},
{
“ctr”: 0.0,
“query”: “forfait mobile 5g”,
“clicks”: 0,
“position”: 10.777777777777779,
“impressions”: 9
},
{
“ctr”: 0.0,
“query”: “meilleur offre mobile suisse”,
“clicks”: 0,
“position”: 72.44444444444444,
“impressions”: 9
},
{
“ctr”: 0.0,
“query”: “abonnement 5g suisse”,
“clicks”: 0,
“position”: 9.0,
“impressions”: 7
},
{
“ctr”: 0.0,
“query”: “forfait 5g suisse”,
“clicks”: 0,
“position”: 11.714285714285714,
“impressions”: 7
},
{
“ctr”: 0.0,
“query”: “meilleur abonnement mobile suisse”,
“clicks”: 0,
“position”: 36.285714285714285,
“impressions”: 7
}
]
},
“recorded_at”: “2026-05-15 00:00:16.247142+00:00”,
“payload”: {
“saved_at”: “2026-05-14T18:15:05.826379Z”,
“top_pages”: [
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/comparatif-abonnement-mobile-suisse”,
“clicks”: 0,
“position”: 16.33064516129032,
“top_query”: “comparatif abonnement mobile suisse”,
“impressions”: 124
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/abonnement-mobile”,
“clicks”: 0,
“position”: 33.90588235294118,
“top_query”: “comparateur forfait mobile suisse”,
“impressions”: 85
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-suisse-roaming-europe”,
“clicks”: 0,
“position”: 19.6625,
“top_query”: “roaming suisse”,
“impressions”: 80
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”,
“clicks”: 0,
“position”: 9.794117647058824,
“top_query”: “forfait mobile 5g”,
“impressions”: 68
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-sans-engagement-suisse”,
“clicks”: 0,
“position”: 31.78787878787879,
“top_query”: “comparatif abonnement mobile suisse”,
“impressions”: 33
}
],
“top_queries”: [
{
“ctr”: 0.0,
“query”: “comparatif abonnement mobile suisse”,
“clicks”: 0,
“position”: 30.666666666666668,
“impressions”: 27
},
{
“ctr”: 0.0,
“query”: “roaming suisse”,
“clicks”: 0,
“position”: 16.037037037037038,
“impressions”: 27
},
{
“ctr”: 0.0,
“query”: “comparateur forfait mobile suisse”,
“clicks”: 0,
“position”: 44.411764705882355,
“impressions”: 17
},
{
“ctr”: 0.0,
“query”: “abonnement mobile suisse comparatif”,
“clicks”: 0,
“position”: 27.46153846153846,
“impressions”: 13
},
{
“ctr”: 0.0,
“query”: “comparatif abonnement mobile”,
“clicks”: 0,
“position”: 18.25,
“impressions”: 12
},
{
“ctr”: 0.0,
“query”: “forfait mobile 5g”,
“clicks”: 0,
“position”: 10.777777777777779,
“impressions”: 9
},
{
“ctr”: 0.0,
“query”: “meilleur offre mobile suisse”,
“clicks”: 0,
“position”: 72.44444444444444,
“impressions”: 9
},
{
“ctr”: 0.0,
“query”: “abonnement 5g suisse”,
“clicks”: 0,
“position”: 9.0,
“impressions”: 7
},
{
“ctr”: 0.0,
“query”: “forfait 5g suisse”,
“clicks”: 0,
“position”: 11.714285714285714,
“impressions”: 7
},
{
“ctr”: 0.0,
“query”: “meilleur abonnement mobile suisse”,
“clicks”: 0,
“position”: 36.285714285714285,
“impressions”: 7
}
]
}
},
{
“id”: 637,
“site_key”: “forfaitdeal”,
“source_type”: “learningseo_site_feedback”,
“subject_key”: “forfaitdeal”,
“payload_json”: {
“site_key”: “forfaitdeal”,
“project_name”: “ForfaitDeal”,
“applied_topics”: [
“fundamentals”,
“execution”,
“technical”,
“content”,
“links”,
“automation”
],
“contradictions”: [
“Negative measured outcomes still exist. SOP confidence should not be raised until remeasurement confirms recovery.”
],
“sop_candidates”: [
“Block SOP confidence increases when the latest measured action in the same category is negative.”,
“Treat crawlability, indexation, and internal-link architecture as preconditions before content-scale actions.”,
“Prioritize title/H1/intent refreshes on visible pages before creating new pages for adjacent intents.”,
“Every new or refreshed priority page should receive a deliberate internal-link plan from existing related pages.”,
“Automated actions must emit events, measurements, and postmortems by default.”
],
“lessons_created”: 7
},
“recorded_at”: “2026-05-15 00:00:11.755896+00:00”,
“payload”: {
“site_key”: “forfaitdeal”,
“project_name”: “ForfaitDeal”,
“applied_topics”: [
“fundamentals”,
“execution”,
“technical”,
“content”,
“links”,
“automation”
],
“contradictions”: [
“Negative measured outcomes still exist. SOP confidence should not be raised until remeasurement confirms recovery.”
],
“sop_candidates”: [
“Block SOP confidence increases when the latest measured action in the same category is negative.”,
“Treat crawlability, indexation, and internal-link architecture as preconditions before content-scale actions.”,
“Prioritize title/H1/intent refreshes on visible pages before creating new pages for adjacent intents.”,
“Every new or refreshed priority page should receive a deliberate internal-link plan from existing related pages.”,
“Automated actions must emit events, measurements, and postmortems by default.”
],
“lessons_created”: 7
}
},
{
“id”: 632,
“site_key”: “forfaitdeal”,
“source_type”: “technical_audit”,
“subject_key”: “forfaitdeal”,
“payload_json”: {
“gsc”: {
“checked”: false
},
“pages”: [
{
“ok”: true,
“url”: “https://www.forfaitdeal.ch”,
“error”: "",
“noindex”: false,
“canonical”: “https://www.forfaitdeal.ch/”,
“final_url”: “https://www.forfaitdeal.ch/”,
“indexable”: true,
“redirected”: false,
“robots_meta”: "",
“status_code”: 200,
“x_robots_tag”: "",
“redirect_chain”: [],
“robots_allowed”: true,
“canonical_present”: true,
“canonical_matches_url”: true
},
{
“ok”: true,
“url”: “https://www.forfaitdeal.ch/blog”,
“error”: "",
“noindex”: false,
“canonical”: “https://www.forfaitdeal.ch/blog”,
“final_url”: “https://www.forfaitdeal.ch/blog”,
“indexable”: true,
“redirected”: false,
“robots_meta”: "",
“status_code”: 200,
“x_robots_tag”: "",
“redirect_chain”: [],
“robots_allowed”: true,
“canonical_present”: true,
“canonical_matches_url”: true
}
],
“robots”: {
“ok”: true,
“url”: “https://www.forfaitdeal.ch/robots.txt”,
“error”: "",
“sitemaps”: [
“https://www.forfaitdeal.ch/sitemap.xml”
],
“blocks_all”: false,
“rules_text”: “User-agent: *\nAllow: /\n\nSitemap: https://www.forfaitdeal.ch/sitemap.xml\n”,
“status_code”: 200
},
“status”: “ok”,
“checked”: true,
“sitemap”: {
“ok”: true,
“checked”: [
{
“ok”: true,
“url”: “https://www.forfaitdeal.ch/sitemap.xml”,
“error”: "",
“root_tag”: “urlset”,
“url_count”: 16,
“valid_xml”: true,
“status_code”: 200,
“child_checked”: [],
“child_sitemaps”: [],
“listed_sample_urls”: [
“https://www.forfaitdeal.ch/”,
“https://www.forfaitdeal.ch/comparateur”,
“https://www.forfaitdeal.ch/blog”,
“https://www.forfaitdeal.ch/methodologie”,
“https://www.forfaitdeal.ch/confidentialite”,
“https://www.forfaitdeal.ch/blog/meilleur-forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/roaming-suisse-forfait”,
“https://www.forfaitdeal.ch/blog/comparatif-forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-data-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-sans-engagement-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-esim-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-suisse-roaming-europe”,
“https://www.forfaitdeal.ch/blog/comparatif-abonnement-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/abonnement-mobile”
]
}
],
“selected”: {
“ok”: true,
“url”: “https://www.forfaitdeal.ch/sitemap.xml”,
“error”: "",
“root_tag”: “urlset”,
“url_count”: 16,
“valid_xml”: true,
“status_code”: 200,
“child_checked”: [],
“child_sitemaps”: [],
“listed_sample_urls”: [
“https://www.forfaitdeal.ch/”,
“https://www.forfaitdeal.ch/comparateur”,
“https://www.forfaitdeal.ch/blog”,
“https://www.forfaitdeal.ch/methodologie”,
“https://www.forfaitdeal.ch/confidentialite”,
“https://www.forfaitdeal.ch/blog/meilleur-forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/roaming-suisse-forfait”,
“https://www.forfaitdeal.ch/blog/comparatif-forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-data-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-sans-engagement-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-esim-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-suisse-roaming-europe”,
“https://www.forfaitdeal.ch/blog/comparatif-abonnement-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/abonnement-mobile”
]
}
},
“site_key”: “forfaitdeal”,
“warnings”: [
“LCP mobile élevé (2740 ms)”
],
“pagespeed”: {
“ok”: true,
“cls”: 0.066347,
“inp_ms”: 83.0,
“lcp_ms”: 2740.8592652706466,
“mobile”: {
“ok”: true,
“cls”: 0.066347,
“inp_ms”: 83.0,
“lcp_ms”: 2740.8592652706466,
“source”: “pagespeed_insights”,
“strategy”: “mobile”,
“performance_score”: 91.0
},
“source”: “pagespeed_insights”,
“desktop”: {
“ok”: true,
“cls”: 0.009585,
“inp_ms”: 67.0,
“lcp_ms”: 688.3973233024644,
“source”: “pagespeed_insights”,
“strategy”: “desktop”,
“performance_score”: 100.0
},
“strategy”: “mobile”,
“performance_score”: 91.0
},
“blocking_issues”: [],
“safe_to_optimize”: true,
“sitemap_coverage”: {
“checked”: true,
“missing_urls”: [],
“expected_urls”: [
“https://www.forfaitdeal.ch”,
“https://www.forfaitdeal.ch/blog”
],
“listed_url_sample_size”: 16
},
“technical_health_score”: 90
},
“recorded_at”: “2026-05-14 00:07:22.737610+00:00”,
“payload”: {
“gsc”: {
“checked”: false
},
“pages”: [
{
“ok”: true,
“url”: “https://www.forfaitdeal.ch”,
“error”: "",
“noindex”: false,
“canonical”: “https://www.forfaitdeal.ch/”,
“final_url”: “https://www.forfaitdeal.ch/”,
“indexable”: true,
“redirected”: false,
“robots_meta”: "",
“status_code”: 200,
“x_robots_tag”: "",
“redirect_chain”: [],
“robots_allowed”: true,
“canonical_present”: true,
“canonical_matches_url”: true
},
{
“ok”: true,
“url”: “https://www.forfaitdeal.ch/blog”,
“error”: "",
“noindex”: false,
“canonical”: “https://www.forfaitdeal.ch/blog”,
“final_url”: “https://www.forfaitdeal.ch/blog”,
“indexable”: true,
“redirected”: false,
“robots_meta”: "",
“status_code”: 200,
“x_robots_tag”: "",
“redirect_chain”: [],
“robots_allowed”: true,
“canonical_present”: true,
“canonical_matches_url”: true
}
],
“robots”: {
“ok”: true,
“url”: “https://www.forfaitdeal.ch/robots.txt”,
“error”: "",
“sitemaps”: [
“https://www.forfaitdeal.ch/sitemap.xml”
],
“blocks_all”: false,
“rules_text”: “User-agent: *\nAllow: /\n\nSitemap: https://www.forfaitdeal.ch/sitemap.xml\n”,
“status_code”: 200
},
“status”: “ok”,
“checked”: true,
“sitemap”: {
“ok”: true,
“checked”: [
{
“ok”: true,
“url”: “https://www.forfaitdeal.ch/sitemap.xml”,
“error”: "",
“root_tag”: “urlset”,
“url_count”: 16,
“valid_xml”: true,
“status_code”: 200,
“child_checked”: [],
“child_sitemaps”: [],
“listed_sample_urls”: [
“https://www.forfaitdeal.ch/”,
“https://www.forfaitdeal.ch/comparateur”,
“https://www.forfaitdeal.ch/blog”,
“https://www.forfaitdeal.ch/methodologie”,
“https://www.forfaitdeal.ch/confidentialite”,
“https://www.forfaitdeal.ch/blog/meilleur-forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/roaming-suisse-forfait”,
“https://www.forfaitdeal.ch/blog/comparatif-forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-data-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-sans-engagement-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-esim-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-suisse-roaming-europe”,
“https://www.forfaitdeal.ch/blog/comparatif-abonnement-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/abonnement-mobile”
]
}
],
“selected”: {
“ok”: true,
“url”: “https://www.forfaitdeal.ch/sitemap.xml”,
“error”: "",
“root_tag”: “urlset”,
“url_count”: 16,
“valid_xml”: true,
“status_code”: 200,
“child_checked”: [],
“child_sitemaps”: [],
“listed_sample_urls”: [
“https://www.forfaitdeal.ch/”,
“https://www.forfaitdeal.ch/comparateur”,
“https://www.forfaitdeal.ch/blog”,
“https://www.forfaitdeal.ch/methodologie”,
“https://www.forfaitdeal.ch/confidentialite”,
“https://www.forfaitdeal.ch/blog/meilleur-forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/roaming-suisse-forfait”,
“https://www.forfaitdeal.ch/blog/comparatif-forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-data-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-sans-engagement-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-esim-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-suisse-roaming-europe”,
“https://www.forfaitdeal.ch/blog/comparatif-abonnement-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/abonnement-mobile”
]
}
},
“site_key”: “forfaitdeal”,
“warnings”: [
“LCP mobile élevé (2740 ms)”
],
“pagespeed”: {
“ok”: true,
“cls”: 0.066347,
“inp_ms”: 83.0,
“lcp_ms”: 2740.8592652706466,
“mobile”: {
“ok”: true,
“cls”: 0.066347,
“inp_ms”: 83.0,
“lcp_ms”: 2740.8592652706466,
“source”: “pagespeed_insights”,
“strategy”: “mobile”,
“performance_score”: 91.0
},
“source”: “pagespeed_insights”,
“desktop”: {
“ok”: true,
“cls”: 0.009585,
“inp_ms”: 67.0,
“lcp_ms”: 688.3973233024644,
“source”: “pagespeed_insights”,
“strategy”: “desktop”,
“performance_score”: 100.0
},
“strategy”: “mobile”,
“performance_score”: 91.0
},
“blocking_issues”: [],
“safe_to_optimize”: true,
“sitemap_coverage”: {
“checked”: true,
“missing_urls”: [],
“expected_urls”: [
“https://www.forfaitdeal.ch”,
“https://www.forfaitdeal.ch/blog”
],
“listed_url_sample_size”: 16
},
“technical_health_score”: 90
}
},
{
“id”: 627,
“site_key”: “forfaitdeal”,
“source_type”: “technical_remediation”,
“subject_key”: “forfaitdeal”,
“payload_json”: {
“ok”: true,
“errors”: [],
“actions”: [
{
“type”: “optimize_lcp”,
“value”: 5025.8,
“metric”: “lcp_ms”,
“target”: “https://www.forfaitdeal.ch”,
“priority”: “high”,
“threshold”: 2500,
“recommended_changes”: [
“Identifier l’élément LCP mobile sur la home via PageSpeed/Lighthouse.”,
“Optimiser l’image ou le bloc hero responsable: format WebP/AVIF, dimensions adaptées, compression.”,
“Précharger ou prioriser uniquement l’asset LCP critique et différer les médias non critiques.”,
“Réduire CSS/JS bloquant au-dessus de la ligne de flottaison.”
]
}
],
“changed”: false,
“attempted”: true,
“deployment”: {
“ok”: true,
“detail”: “no_change”,
“checked”: false
}
},
“recorded_at”: “2026-05-14 00:04:38.719061+00:00”,
“payload”: {
“ok”: true,
“errors”: [],
“actions”: [
{
“type”: “optimize_lcp”,
“value”: 5025.8,
“metric”: “lcp_ms”,
“target”: “https://www.forfaitdeal.ch”,
“priority”: “high”,
“threshold”: 2500,
“recommended_changes”: [
“Identifier l’élément LCP mobile sur la home via PageSpeed/Lighthouse.”,
“Optimiser l’image ou le bloc hero responsable: format WebP/AVIF, dimensions adaptées, compression.”,
“Précharger ou prioriser uniquement l’asset LCP critique et différer les médias non critiques.”,
“Réduire CSS/JS bloquant au-dessus de la ligne de flottaison.”
]
}
],
“changed”: false,
“attempted”: true,
“deployment”: {
“ok”: true,
“detail”: “no_change”,
“checked”: false
}
}
},
{
“id”: 626,
“site_key”: “forfaitdeal”,
“source_type”: “technical_audit”,
“subject_key”: “forfaitdeal”,
“payload_json”: {
“gsc”: {
“ok”: true,
“checked”: true,
“message”: “Connexion GSC OK”,
“payload”: {
“sample_rows”: 1,
“properties_count”: 4,
“resolved_property”: “sc-domain:forfaitdeal.ch”
},
“sitemap_url”: “https://www.forfaitdeal.ch/sitemap.xml”,
“sitemap_submission_ready”: true
},
“pages”: [
{
“ok”: true,
“url”: “https://www.forfaitdeal.ch”,
“error”: "",
“noindex”: false,
“canonical”: “https://www.forfaitdeal.ch/”,
“final_url”: “https://www.forfaitdeal.ch/”,
“indexable”: true,
“redirected”: false,
“robots_meta”: "",
“status_code”: 200,
“x_robots_tag”: "",
“redirect_chain”: [],
“robots_allowed”: true,
“canonical_present”: true,
“canonical_matches_url”: true
},
{
“ok”: true,
“url”: “https://www.forfaitdeal.ch/blog”,
“error”: "",
“noindex”: false,
“canonical”: “https://www.forfaitdeal.ch/blog”,
“final_url”: “https://www.forfaitdeal.ch/blog”,
“indexable”: true,
“redirected”: false,
“robots_meta”: "",
“status_code”: 200,
“x_robots_tag”: "",
“redirect_chain”: [],
“robots_allowed”: true,
“canonical_present”: true,
“canonical_matches_url”: true
}
],
“robots”: {
“ok”: true,
“url”: “https://www.forfaitdeal.ch/robots.txt”,
“error”: "",
“sitemaps”: [
“https://www.forfaitdeal.ch/sitemap.xml”
],
“blocks_all”: false,
“rules_text”: “User-agent: *\nAllow: /\n\nSitemap: https://www.forfaitdeal.ch/sitemap.xml\n”,
“status_code”: 200
},
“status”: “ok”,
“checked”: true,
“sitemap”: {
“ok”: true,
“checked”: [
{
“ok”: true,
“url”: “https://www.forfaitdeal.ch/sitemap.xml”,
“error”: "",
“root_tag”: “urlset”,
“url_count”: 16,
“valid_xml”: true,
“status_code”: 200,
“child_checked”: [],
“child_sitemaps”: [],
“listed_sample_urls”: [
“https://www.forfaitdeal.ch/”,
“https://www.forfaitdeal.ch/comparateur”,
“https://www.forfaitdeal.ch/blog”,
“https://www.forfaitdeal.ch/methodologie”,
“https://www.forfaitdeal.ch/confidentialite”,
“https://www.forfaitdeal.ch/blog/meilleur-forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/roaming-suisse-forfait”,
“https://www.forfaitdeal.ch/blog/comparatif-forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-data-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-sans-engagement-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-esim-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-suisse-roaming-europe”,
“https://www.forfaitdeal.ch/blog/comparatif-abonnement-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/abonnement-mobile”
]
}
],
“selected”: {
“ok”: true,
“url”: “https://www.forfaitdeal.ch/sitemap.xml”,
“error”: "",
“root_tag”: “urlset”,
“url_count”: 16,
“valid_xml”: true,
“status_code”: 200,
“child_checked”: [],
“child_sitemaps”: [],
“listed_sample_urls”: [
“https://www.forfaitdeal.ch/”,
“https://www.forfaitdeal.ch/comparateur”,
“https://www.forfaitdeal.ch/blog”,
“https://www.forfaitdeal.ch/methodologie”,
“https://www.forfaitdeal.ch/confidentialite”,
“https://www.forfaitdeal.ch/blog/meilleur-forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/roaming-suisse-forfait”,
“https://www.forfaitdeal.ch/blog/comparatif-forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-data-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-sans-engagement-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-esim-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-suisse-roaming-europe”,
“https://www.forfaitdeal.ch/blog/comparatif-abonnement-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/abonnement-mobile”
]
}
},
“site_key”: “forfaitdeal”,
“warnings”: [
“LCP mobile élevé (5025 ms)”
],
“pagespeed”: {
“ok”: true,
“cls”: 0.0,
“inp_ms”: 94.0,
“lcp_ms”: 5025.843404434209,
“mobile”: {
“ok”: true,
“cls”: 0.0,
“inp_ms”: 94.0,
“lcp_ms”: 5025.843404434209,
“source”: “pagespeed_insights”,
“strategy”: “mobile”,
“performance_score”: 75.0
},
“source”: “pagespeed_insights”,
“desktop”: {
“ok”: true,
“cls”: 0.009585,
“inp_ms”: 60.0,
“lcp_ms”: 688.878231489629,
“source”: “pagespeed_insights”,
“strategy”: “desktop”,
“performance_score”: 100.0
},
“strategy”: “mobile”,
“performance_score”: 75.0
},
“blocking_issues”: [],
“safe_to_optimize”: true,
“sitemap_coverage”: {
“checked”: true,
“missing_urls”: [],
“expected_urls”: [
“https://www.forfaitdeal.ch”,
“https://www.forfaitdeal.ch/blog”
],
“listed_url_sample_size”: 16
},
“technical_health_score”: 90
},
“recorded_at”: “2026-05-14 00:04:37.402646+00:00”,
“payload”: {
“gsc”: {
“ok”: true,
“checked”: true,
“message”: “Connexion GSC OK”,
“payload”: {
“sample_rows”: 1,
“properties_count”: 4,
“resolved_property”: “sc-domain:forfaitdeal.ch”
},
“sitemap_url”: “https://www.forfaitdeal.ch/sitemap.xml”,
“sitemap_submission_ready”: true
},
“pages”: [
{
“ok”: true,
“url”: “https://www.forfaitdeal.ch”,
“error”: "",
“noindex”: false,
“canonical”: “https://www.forfaitdeal.ch/”,
“final_url”: “https://www.forfaitdeal.ch/”,
“indexable”: true,
“redirected”: false,
“robots_meta”: "",
“status_code”: 200,
“x_robots_tag”: "",
“redirect_chain”: [],
“robots_allowed”: true,
“canonical_present”: true,
“canonical_matches_url”: true
},
{
“ok”: true,
“url”: “https://www.forfaitdeal.ch/blog”,
“error”: "",
“noindex”: false,
“canonical”: “https://www.forfaitdeal.ch/blog”,
“final_url”: “https://www.forfaitdeal.ch/blog”,
“indexable”: true,
“redirected”: false,
“robots_meta”: "",
“status_code”: 200,
“x_robots_tag”: "",
“redirect_chain”: [],
“robots_allowed”: true,
“canonical_present”: true,
“canonical_matches_url”: true
}
],
“robots”: {
“ok”: true,
“url”: “https://www.forfaitdeal.ch/robots.txt”,
“error”: "",
“sitemaps”: [
“https://www.forfaitdeal.ch/sitemap.xml”
],
“blocks_all”: false,
“rules_text”: “User-agent: *\nAllow: /\n\nSitemap: https://www.forfaitdeal.ch/sitemap.xml\n”,
“status_code”: 200
},
“status”: “ok”,
“checked”: true,
“sitemap”: {
“ok”: true,
“checked”: [
{
“ok”: true,
“url”: “https://www.forfaitdeal.ch/sitemap.xml”,
“error”: "",
“root_tag”: “urlset”,
“url_count”: 16,
“valid_xml”: true,
“status_code”: 200,
“child_checked”: [],
“child_sitemaps”: [],
“listed_sample_urls”: [
“https://www.forfaitdeal.ch/”,
“https://www.forfaitdeal.ch/comparateur”,
“https://www.forfaitdeal.ch/blog”,
“https://www.forfaitdeal.ch/methodologie”,
“https://www.forfaitdeal.ch/confidentialite”,
“https://www.forfaitdeal.ch/blog/meilleur-forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/roaming-suisse-forfait”,
“https://www.forfaitdeal.ch/blog/comparatif-forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-data-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-sans-engagement-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-esim-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-suisse-roaming-europe”,
“https://www.forfaitdeal.ch/blog/comparatif-abonnement-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/abonnement-mobile”
]
}
],
“selected”: {
“ok”: true,
“url”: “https://www.forfaitdeal.ch/sitemap.xml”,
“error”: "",
“root_tag”: “urlset”,
“url_count”: 16,
“valid_xml”: true,
“status_code”: 200,
“child_checked”: [],
“child_sitemaps”: [],
“listed_sample_urls”: [
“https://www.forfaitdeal.ch/”,
“https://www.forfaitdeal.ch/comparateur”,
“https://www.forfaitdeal.ch/blog”,
“https://www.forfaitdeal.ch/methodologie”,
“https://www.forfaitdeal.ch/confidentialite”,
“https://www.forfaitdeal.ch/blog/meilleur-forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/roaming-suisse-forfait”,
“https://www.forfaitdeal.ch/blog/comparatif-forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-data-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-sans-engagement-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-esim-suisse”,
“https://www.forfaitdeal.ch/blog/forfait-mobile-suisse-roaming-europe”,
“https://www.forfaitdeal.ch/blog/comparatif-abonnement-mobile-suisse”,
“https://www.forfaitdeal.ch/blog/abonnement-mobile”
]
}
},
“site_key”: “forfaitdeal”,
“warnings”: [
“LCP mobile élevé (5025 ms)”
],
“pagespeed”: {
“ok”: true,
“cls”: 0.0,
“inp_ms”: 94.0,
“lcp_ms”: 5025.843404434209,
“mobile”: {
“ok”: true,
“cls”: 0.0,
“inp_ms”: 94.0,
“lcp_ms”: 5025.843404434209,
“source”: “pagespeed_insights”,
“strategy”: “mobile”,
“performance_score”: 75.0
},
“source”: “pagespeed_insights”,
“desktop”: {
“ok”: true,
“cls”: 0.009585,
“inp_ms”: 60.0,
“lcp_ms”: 688.878231489629,
“source”: “pagespeed_insights”,
“strategy”: “desktop”,
“performance_score”: 100.0
},
“strategy”: “mobile”,
“performance_score”: 75.0
},
“blocking_issues”: [],
“safe_to_optimize”: true,
“sitemap_coverage”: {
“checked”: true,
“missing_urls”: [],
“expected_urls”: [
“https://www.forfaitdeal.ch”,
“https://www.forfaitdeal.ch/blog”
],
“listed_url_sample_size”: 16
},
“technical_health_score”: 90
}
}
],
“live_state”: {
“queue”: {
“by_status”: {
“failed”: 6,
“published”: 11
},
“recent_items”: [
{
“id”: 230,
“slug”: “roaming-suisse”,
“status”: “failed”,
“scheduled_at”: “2026-05-13T07:00:00+00:00”,
“published_at”: null,
“error”: “Vercel: ERROR — Command “npm run build” exited with 1\nLogs : https://vercel.com/anges-projects-a4da2420/comparateur-mobile/6gck8h49Ck4eZgEk5V5jpb84HTJ9”,
“attempts”: 0
},
{
“id”: 103,
“slug”: “forfait-mobile-famille-suisse”,
“status”: “failed”,
“scheduled_at”: “2026-05-08T07:00:00+00:00”,
“published_at”: null,
“error”: “Vercel: ERROR — Command “npm run build” exited with 1\nLogs : https://vercel.com/anges-projects-a4da2420/comparateur-mobile/Dd6FLxAvJ7UjydbnkhWKSuJ3XJtC”,
“attempts”: 0
},
{
“id”: 102,
“slug”: “portabilite-numero-mobile-suisse”,
“status”: “failed”,
“scheduled_at”: “2026-05-07T07:00:00+00:00”,
“published_at”: null,
“error”: “Vercel: ERROR — Command “npm run build” exited with 1\nLogs : https://vercel.com/anges-projects-a4da2420/comparateur-mobile/6zomyRRv68WhLxRpiJFMtjmgsxPP”,
“attempts”: 0
},
{
“id”: 101,
“slug”: “swisscom-resiliation-abonnement”,
“status”: “failed”,
“scheduled_at”: “2026-05-06T07:00:00+00:00”,
“published_at”: null,
“error”: “Vercel: ERROR — Command “npm run build” exited with 1\nLogs : https://vercel.com/anges-projects-a4da2420/comparateur-mobile/GNScGHTdsrig2WoRZQsoutLjsMXq”,
“attempts”: 0
},
{
“id”: 100,
“slug”: “quel-abonnement-swisscom-choisir”,
“status”: “failed”,
“scheduled_at”: “2026-05-05T07:00:00+00:00”,
“published_at”: null,
“error”: “Vercel: ERROR — Command “npm run build” exited with 1\nLogs : https://vercel.com/anges-projects-a4da2420/comparateur-mobile/bT9eWtPkK875DkLHcj1vV21i7xC7”,
“attempts”: 0
}
]
},
“gsc”: {
“saved_at”: “2026-05-14T18:15:05.826379Z”,
“top_pages”: [
{
“page”: “https://www.forfaitdeal.ch/blog/comparatif-abonnement-mobile-suisse”,
“clicks”: 0,
“impressions”: 124,
“ctr”: 0.0,
“position”: 16.33064516129032,
“top_query”: “comparatif abonnement mobile suisse”
},
{
“page”: “https://www.forfaitdeal.ch/blog/abonnement-mobile”,
“clicks”: 0,
“impressions”: 85,
“ctr”: 0.0,
“position”: 33.90588235294118,
“top_query”: “comparateur forfait mobile suisse”
},
{
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-suisse-roaming-europe”,
“clicks”: 0,
“impressions”: 80,
“ctr”: 0.0,
“position”: 19.6625,
“top_query”: “roaming suisse”
}
],
“top_queries”: [
{
“query”: “comparatif abonnement mobile suisse”,
“clicks”: 0,
“impressions”: 27,
“ctr”: 0.0,
“position”: 30.666666666666668
},
{
“query”: “roaming suisse”,
“clicks”: 0,
“impressions”: 27,
“ctr”: 0.0,
“position”: 16.037037037037038
},
{
“query”: “comparateur forfait mobile suisse”,
“clicks”: 0,
“impressions”: 17,
“ctr”: 0.0,
“position”: 44.411764705882355
},
{
“query”: “abonnement mobile suisse comparatif”,
“clicks”: 0,
“impressions”: 13,
“ctr”: 0.0,
“position”: 27.46153846153846
},
{
“query”: “comparatif abonnement mobile”,
“clicks”: 0,
“impressions”: 12,
“ctr”: 0.0,
“position”: 18.25
}
]
},
“workflow”: {
“updated_at”: “2026-05-15T00:00:58.419877Z”,
“recent_events”: [
{
“type”: “hermes_content_pipeline”,
“payload”: {
“topic”: “forfait mobile suisse”,
“slug”: “forfait-mobile-suisse”,
“queue_status”: “scheduled”
},
“recorded_at”: “2026-05-15T00:00:19.650188Z”
},
{
“type”: “hermes_content_pipeline”,
“payload”: {
“topic”: “comparatif forfait mobile suisse”,
“slug”: “comparatif-forfait-mobile-suisse”,
“queue_status”: “scheduled”
},
“recorded_at”: “2026-05-15T00:00:29.925776Z”
},
{
“type”: “hermes_content_pipeline”,
“payload”: {
“topic”: “meilleur forfait mobile suisse”,
“slug”: “meilleur-forfait-mobile-suisse”,
“queue_status”: “scheduled”
},
“recorded_at”: “2026-05-15T00:00:40.217719Z”
},
{
“type”: “hermes_content_pipeline”,
“payload”: {
“topic”: “roaming suisse forfait”,
“slug”: “roaming-suisse-forfait”,
“queue_status”: “scheduled”
},
“recorded_at”: “2026-05-15T00:00:40.384258Z”
},
{
“type”: “hermes_content_pipeline”,
“payload”: {
“topic”: “roaming suisse”,
“slug”: “roaming-suisse”,
“queue_status”: “failed”
},
“recorded_at”: “2026-05-15T00:00:58.419687Z”
}
]
}
},
“site_context”: {
“site_key”: “forfaitdeal”,
“project_name”: “ForfaitDeal”,
“project_type”: “repo_files”,
“site_url”: “https://www.forfaitdeal.ch”,
“base_url”: “https://www.forfaitdeal.ch/blog”,
“gsc_property”: “sc-domain:forfaitdeal.ch”,
“gsc_blog_prefix”: “https://www.forfaitdeal.ch/blog”,
“agent_mode”: “full_autonomy”,
“operator_policy”: “agent_driven”,
“primary_market”: “ch”,
“target_countries”: [
“ch”,
“fr”
],
“seo_scope”: “national”,
“competitors”: [
{
“label”: “Comparis Mobile”,
“url”: “https://fr.comparis.ch/telecom/mobile”,
“notes”: ""
},
{
“label”: “Moneyland Mobile”,
“url”: “https://www.moneyland.ch/fr/abonnement-mobile-comparatif”,
“notes”: ""
}
],
“editorial_policy”: {
“queue_target_max”: 10,
“queue_resume_threshold”: 2,
“publish_timezone”: “Europe/Paris”,
“publish_hour_local”: 9,
“publish_weekdays_only”: true,
“max_daily_publishes”: 1,
“keyword_min_volume”: 50,
“keyword_max_difficulty”: 45
},
“image_policy”: {
“style_guardrail”: “editorial_photo”,
“subject_focus”: “product_objects”,
“allow_humans”: “limited”,
“fallback_enabled”: true,
“max_prompt_variants”: 5,
“min_quality_score”: 70
},
“features”: {
“gsc_enabled”: true,
“writer_gsc_enabled”: true,
“gsc_opportunities_enabled”: true,
“seo_panel_enabled”: true,
“crawler_enabled”: true,
“linkmap_enabled”: true
}
}
},
“validated_lessons”: [
{
“id”: 122,
“site_key”: “forfaitdeal”,
“category”: “ctr_optimization”,
“lesson”: “Several visible pages have low CTR. Prioritize title, meta description, and intent alignment refreshes before creating net new content.”,
“confidence”: “high”,
“source”: “feedback_loop”,
“status”: “validated”,
“details_json”: {
“pages”: [
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/comparatif-abonnement-mobile-suisse”,
“clicks”: 0,
“position”: 16.33064516129032,
“top_query”: “comparatif abonnement mobile suisse”,
“impressions”: 124
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/abonnement-mobile”,
“clicks”: 0,
“position”: 33.90588235294118,
“top_query”: “comparateur forfait mobile suisse”,
“impressions”: 85
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-suisse-roaming-europe”,
“clicks”: 0,
“position”: 19.6625,
“top_query”: “roaming suisse”,
“impressions”: 80
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”,
“clicks”: 0,
“position”: 9.794117647058824,
“top_query”: “forfait mobile 5g”,
“impressions”: 68
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-sans-engagement-suisse”,
“clicks”: 0,
“position”: 31.78787878787879,
“top_query”: “comparatif abonnement mobile suisse”,
“impressions”: 33
}
]
},
“created_at”: “2026-05-15 00:00:18.603412+00:00”,
“updated_at”: “2026-05-15 00:00:19.225649+00:00”,
“details”: {
“pages”: [
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/comparatif-abonnement-mobile-suisse”,
“clicks”: 0,
“position”: 16.33064516129032,
“top_query”: “comparatif abonnement mobile suisse”,
“impressions”: 124
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/abonnement-mobile”,
“clicks”: 0,
“position”: 33.90588235294118,
“top_query”: “comparateur forfait mobile suisse”,
“impressions”: 85
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-suisse-roaming-europe”,
“clicks”: 0,
“position”: 19.6625,
“top_query”: “roaming suisse”,
“impressions”: 80
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”,
“clicks”: 0,
“position”: 9.794117647058824,
“top_query”: “forfait mobile 5g”,
“impressions”: 68
},
{
“ctr”: 0.0,
“page”: “https://www.forfaitdeal.ch/blog/forfait-mobile-sans-engagement-suisse”,
“clicks”: 0,
“position”: 31.78787878787879,
“top_query”: “comparatif abonnement mobile suisse”,
“impressions”: 33
}
]
}
},
{
“id”: 84,
“site_key”: “forfaitdeal”,
“category”: “throughput”,
“lesson”: “Queue pressure is high. Reduce draft generation and prioritize review, refresh, and publishing throughput.”,
“confidence”: “high”,
“source”: “feedback_loop”,
“status”: “validated”,
“details_json”: {
“failed_count”: 0,
“queued_count”: 5
},
“created_at”: “2026-05-04 00:00:17.019909+00:00”,
“updated_at”: “2026-05-04 00:00:17.572122+00:00”,
“details”: {
“failed_count”: 0,
“queued_count”: 5
}
}
],
“active_sops”: [
{
“id”: 79,
“site_key”: “forfaitdeal”,
“scope”: “site”,
“name”: “adaptive-feedback-playbook”,
“version”: 18,
“status”: “validated”,
“content”: “1. Sync and review the latest GSC and queue feedback before planning new work.\n2. If low-CTR pages exist with meaningful impressions, prioritize refreshes before net new drafts.\n3. If the queue is saturated, shift effort from generation to review, optimization, and publishing throughput.\n4. If failures or weak publish outcomes exist, add a verification step before production actions.\n5. Re-measure outcomes after each major SEO action and log the result back into memory.”,
“source”: “feedback_loop”,
“created_at”: “2026-05-14 00:01:43.369783+00:00”,
“updated_at”: “2026-05-15 00:00:19.268718+00:00”,
“confidence_score”: 0,
“confidence_label”: “low”
}
],
“recent_outcomes”: [
{
“id”: 153,
“site_key”: “forfaitdeal”,
“outcome_type”: “gsc_baseline”,
“subject_key”: “publish:roaming-suisse”,
“metric_name”: “position”,
“metric_value”: 0.0,
“payload_json”: {
“row”: {},
“page_url”: “https://www.forfaitdeal.ch/blog/roaming-suisse”
},
“recorded_at”: “2026-05-13 09:00:56.410086+00:00”,
“payload”: {
“row”: {},
“page_url”: “https://www.forfaitdeal.ch/blog/roaming-suisse”
}
},
{
“id”: 152,
“site_key”: “forfaitdeal”,
“outcome_type”: “gsc_baseline”,
“subject_key”: “publish:roaming-suisse”,
“metric_name”: “ctr”,
“metric_value”: 0.0,
“payload_json”: {
“row”: {},
“page_url”: “https://www.forfaitdeal.ch/blog/roaming-suisse”
},
“recorded_at”: “2026-05-13 09:00:56.395728+00:00”,
“payload”: {
“row”: {},
“page_url”: “https://www.forfaitdeal.ch/blog/roaming-suisse”
}
},
{
“id”: 151,
“site_key”: “forfaitdeal”,
“outcome_type”: “gsc_baseline”,
“subject_key”: “publish:roaming-suisse”,
“metric_name”: “impressions”,
“metric_value”: 0.0,
“payload_json”: {
“row”: {},
“page_url”: “https://www.forfaitdeal.ch/blog/roaming-suisse”
},
“recorded_at”: “2026-05-13 09:00:56.382296+00:00”,
“payload”: {
“row”: {},
“page_url”: “https://www.forfaitdeal.ch/blog/roaming-suisse”
}
},
{
“id”: 150,
“site_key”: “forfaitdeal”,
“outcome_type”: “gsc_baseline”,
“subject_key”: “publish:roaming-suisse”,
“metric_name”: “clicks”,
“metric_value”: 0.0,
“payload_json”: {
“row”: {},
“page_url”: “https://www.forfaitdeal.ch/blog/roaming-suisse”
},
“recorded_at”: “2026-05-13 09:00:56.367485+00:00”,
“payload”: {
“row”: {},
“page_url”: “https://www.forfaitdeal.ch/blog/roaming-suisse”
}
},
{
“id”: 119,
“site_key”: “forfaitdeal”,
“outcome_type”: “seo_experiment_result”,
“subject_key”: “content-refresh:forfait-mobile-5g-suisse”,
“metric_name”: “position”,
“metric_value”: 9.31578947368421,
“payload_json”: {
“delta”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 9.31578947368421,
“impressions”: 57.0
},
“success”: false,
“conclusion”: “rejected”,
“hypothesis”: {
“slug”: “forfait-mobile-5g-suisse”,
“query”: “comparatif abonnement mobile suisse”,
“autonomy”: “auto_correctable”,
“baseline”: {
“ctr”: 0.01,
“clicks”: 1,
“position”: 10.6,
“impressions”: 100
},
“site_key”: “forfaitdeal”,
“reasoning”: [
“position proche d’un gain SEO (10.6)”,
“potentiel impression détecté (100)”,
“perte de clics probable: CTR 1.00% pour 100 impressions”,
“la page capte déjà des clics (1)”,
“écart concurrentiel aligné avec la requête”
],
“risk_level”: “medium”,
“action_type”: “content_refresh”,
“playbook_id”: “gain_position”,
“playbook_name”: “Gagner des positions”,
“primary_metric”: “position”,
“secondary_metrics”: [
“clicks”,
“impressions”,
“query_coverage”
],
“expected_direction”: “decrease”
},
“impact_label”: “negative”,
“primary_metric_delta”: 9.31578947368421
},
“recorded_at”: “2026-05-09 17:07:02.348363+00:00”,
“payload”: {
“delta”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 9.31578947368421,
“impressions”: 57.0
},
“success”: false,
“conclusion”: “rejected”,
“hypothesis”: {
“slug”: “forfait-mobile-5g-suisse”,
“query”: “comparatif abonnement mobile suisse”,
“autonomy”: “auto_correctable”,
“baseline”: {
“ctr”: 0.01,
“clicks”: 1,
“position”: 10.6,
“impressions”: 100
},
“site_key”: “forfaitdeal”,
“reasoning”: [
“position proche d’un gain SEO (10.6)”,
“potentiel impression détecté (100)”,
“perte de clics probable: CTR 1.00% pour 100 impressions”,
“la page capte déjà des clics (1)”,
“écart concurrentiel aligné avec la requête”
],
“risk_level”: “medium”,
“action_type”: “content_refresh”,
“playbook_id”: “gain_position”,
“playbook_name”: “Gagner des positions”,
“primary_metric”: “position”,
“secondary_metrics”: [
“clicks”,
“impressions”,
“query_coverage”
],
“expected_direction”: “decrease”
},
“impact_label”: “negative”,
“primary_metric_delta”: 9.31578947368421
}
},
{
“id”: 118,
“site_key”: “forfaitdeal”,
“outcome_type”: “measurement_result”,
“subject_key”: “content-refresh:forfait-mobile-5g-suisse”,
“metric_name”: “impact_score”,
“metric_value”: -12.931578947368422,
“payload_json”: {
“delta”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 9.31578947368421,
“impressions”: 57.0
},
“page_url”: “https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”,
“action_type”: “content_refresh”,
“impact_label”: “negative”,
“measurement_id”: 7
},
“recorded_at”: “2026-05-09 17:07:02.309355+00:00”,
“payload”: {
“delta”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 9.31578947368421,
“impressions”: 57.0
},
“page_url”: “https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”,
“action_type”: “content_refresh”,
“impact_label”: “negative”,
“measurement_id”: 7
}
},
{
“id”: 117,
“site_key”: “forfaitdeal”,
“outcome_type”: “gsc_delta”,
“subject_key”: “content-refresh:forfait-mobile-5g-suisse”,
“metric_name”: “position”,
“metric_value”: 9.31578947368421,
“payload_json”: {
“delta”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 9.31578947368421,
“impressions”: 57.0
},
“current”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 9.31578947368421,
“impressions”: 57.0
},
“baseline”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 0.0,
“impressions”: 0.0
},
“page_url”: “https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”
},
“recorded_at”: “2026-05-09 17:07:02.298196+00:00”,
“payload”: {
“delta”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 9.31578947368421,
“impressions”: 57.0
},
“current”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 9.31578947368421,
“impressions”: 57.0
},
“baseline”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 0.0,
“impressions”: 0.0
},
“page_url”: “https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”
}
},
{
“id”: 116,
“site_key”: “forfaitdeal”,
“outcome_type”: “gsc_delta”,
“subject_key”: “content-refresh:forfait-mobile-5g-suisse”,
“metric_name”: “ctr”,
“metric_value”: 0.0,
“payload_json”: {
“delta”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 9.31578947368421,
“impressions”: 57.0
},
“current”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 9.31578947368421,
“impressions”: 57.0
},
“baseline”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 0.0,
“impressions”: 0.0
},
“page_url”: “https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”
},
“recorded_at”: “2026-05-09 17:07:02.287479+00:00”,
“payload”: {
“delta”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 9.31578947368421,
“impressions”: 57.0
},
“current”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 9.31578947368421,
“impressions”: 57.0
},
“baseline”: {
“ctr”: 0.0,
“clicks”: 0.0,
“position”: 0.0,
“impressions”: 0.0
},
“page_url”: “https://www.forfaitdeal.ch/blog/forfait-mobile-5g-suisse”
}
}
]
}