{"id":90197,"date":"2026-04-22T07:29:50","date_gmt":"2026-04-22T14:29:50","guid":{"rendered":"https:\/\/www.cloudbeds.com\/?page_id=90197"},"modified":"2026-04-23T17:44:34","modified_gmt":"2026-04-24T00:44:34","slug":"pregunta-ia","status":"publish","type":"page","link":"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/","title":{"rendered":"El estado de los hoteles independientes 2026"},"content":{"rendered":"\n<div id=\"report-chat-dd8344a9d5ebb8e7c1730031917f964c\" class=\"report-chat-block\" data-config='{&quot;reportId&quot;:&quot;dd8344a9d5ebb8e7c1730031917f964c&quot;,&quot;chatbotName&quot;:&quot;soih_2026&quot;,&quot;questionLimit&quot;:5,&quot;placeholder&quot;:&quot;Pregunta lo que quieras sobre el informe...&quot;,&quot;cookieName&quot;:&quot;cb_report_q&quot;,&quot;reportTitle&quot;:&quot;Si no preguntas, nunca lo sabr\\u00e1s. Adelante \\u2014 haz preguntas a los datos.&quot;,&quot;ajaxUrl&quot;:&quot;https:\\\/\\\/www.cloudbeds.com\\\/wp-admin\\\/admin-ajax.php&quot;,&quot;nonce&quot;:&quot;c1d98170e8&quot;,&quot;questionsExhaustedText&quot;:&quot;Has utilizado las 5 preguntas.&quot;,&quot;downloadButtonText&quot;:&quot;Descarga el informe&quot;,&quot;questionsRemainingLabel&quot;:&quot;pregunta\\\/\\\/preguntas restantes&quot;,&quot;userLabel&quot;:&quot;T\\u00fa&quot;,&quot;limitReachedMessage&quot;:&quot;Ha alcanzado el l\\u00edmite de preguntas. Descarga el informe completo para ver todos los datos y an\\u00e1lisis.&quot;}'>\n\n<!-- Suggested Questions -->\n<section class=\"rc-prompts font-host max-w-[980px] mx-auto px-6 lg:px-8 py-10 lg:py-12\">\n  <p class=\"text-base font-semibold text-neutral-coffee-05 mb-6\">Preguntas sugeridas<\/p>\n  <div class=\"grid grid-cols-1 md:grid-cols-2 gap-3\">\n        <button class=\"rc-prompt-chip bg-neutral-white border border-neutral-chalk-07 rounded-[4px] px-5 py-4 text-left text-base font-light text-neutral-coffee-05 cursor-pointer transition hover:border-primary-blue-05 hover:bg-primary-blue-01\" data-q=\"\u00bfC\u00f3mo cambiaron el ADR y el RevPAR en 2025?\" data-qid=\"2026_soil_adr_repart_change\" data-pos=\"1\">\u00bfC\u00f3mo cambiaron el ADR y el RevPAR en 2025?<\/button>\n        <button class=\"rc-prompt-chip bg-neutral-white border border-neutral-chalk-07 rounded-[4px] px-5 py-4 text-left text-base font-light text-neutral-coffee-05 cursor-pointer transition hover:border-primary-blue-05 hover:bg-primary-blue-01\" data-q=\"\u00bfQu\u00e9 pa\u00edses dependen m\u00e1s de las OTAs?\" data-qid=\"2026_soil_country_rely_ota\" data-pos=\"2\">\u00bfQu\u00e9 pa\u00edses dependen m\u00e1s de las OTAs?<\/button>\n        <button class=\"rc-prompt-chip bg-neutral-white border border-neutral-chalk-07 rounded-[4px] px-5 py-4 text-left text-base font-light text-neutral-coffee-05 cursor-pointer transition hover:border-primary-blue-05 hover:bg-primary-blue-01\" data-q=\"\u00bfQu\u00e9 canales de reserva registran las tasas de cancelaci\u00f3n m\u00e1s altas?\" data-qid=\"2026_soil_booking_channels\" data-pos=\"3\">\u00bfQu\u00e9 canales de reserva registran las tasas de cancelaci\u00f3n m\u00e1s altas?<\/button>\n        <button class=\"rc-prompt-chip bg-neutral-white border border-neutral-chalk-07 rounded-[4px] px-5 py-4 text-left text-base font-light text-neutral-coffee-05 cursor-pointer transition hover:border-primary-blue-05 hover:bg-primary-blue-01\" data-q=\"\u00bfCon cu\u00e1nta antelaci\u00f3n reservan los viajeros su estancia?\" data-qid=\"2026_soil_how_far_advance\" data-pos=\"4\">\u00bfCon cu\u00e1nta antelaci\u00f3n reservan los viajeros su estancia?<\/button>\n        <button class=\"rc-prompt-chip bg-neutral-white border border-neutral-chalk-07 rounded-[4px] px-5 py-4 text-left text-base font-light text-neutral-coffee-05 cursor-pointer transition hover:border-primary-blue-05 hover:bg-primary-blue-01\" data-q=\"\u00bfCu\u00e1ntas noches se quedan habitualmente los hu\u00e9spedes?\" data-qid=\"2026_soil_how_many_nights\" data-pos=\"5\">\u00bfCu\u00e1ntas noches se quedan habitualmente los hu\u00e9spedes?<\/button>\n      <\/div>\n<\/section>\n\n<!-- Chat Area -->\n<section class=\"font-host max-w-[960px] mx-auto px-6 lg:px-8 pb-8 mt-9\">\n  <div class=\"rc-messages flex flex-col gap-7 min-h-[200px] max-h-[60vh] overflow-y-auto scroll-smooth pr-[42px]\"><\/div>\n<\/section>\n\n<!-- Sticky Input Bar -->\n<div class=\"rc-input-bar sticky bottom-0 bg-neutral-chalk-05 border-t border-neutral-chalk-07 z-50\">\n  <div class=\"max-w-[993px] mx-auto px-6 lg:px-8 py-4 pt-4 md:pt-10\">\n    <div class=\"flex gap-3\">\n      <textarea class=\"rc-user-input flex-1 bg-neutral-white border border-neutral-chalk-07 rounded-[4px] px-5 py-4 font-host text-base text-neutral-coffee-05 resize-none outline-none min-h-[64px] max-h-[120px] focus:border-primary-blue-05 transition\" placeholder=\"Pregunta lo que quieras sobre el informe...\" rows=\"1\"><\/textarea>\n      <button class=\"rc-send-btn w-[3rem] h-[3rem] md:w-[4rem] md:h-[4rem] bg-neutral-coffee-05 rounded-[4px] flex items-center justify-center flex-shrink-0 cursor-pointer transition hover:opacity-80 disabled:opacity-40 disabled:cursor-not-allowed\" disabled>\n        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\">\n          <path d=\"M9.07154e-07 10.3415L0 13.0732H18.7317L10.3415 21.4634L12.2927 23.4146L24 11.7073L12.2927 0L10.3415 1.95122L18.7317 10.3415H9.07154e-07Z\" fill=\"white\" \/>\n        <\/svg>\n      <\/button>\n    <\/div>\n    <div class=\"flex justify-between items-center mt-2 md:mt-4\">\n      <span class=\"text-sm text-neutral-coffee-03 font-light\">Las respuestas generadas por IA se basan \u00fanicamente en el Informe 2026 sobre el Estado de los Hoteles Independientes. Solo con fines informativos.<\/span>\n      <span class=\"rc-question-counter text-sm font-semibold text-neutral-coffee-05 min-w-[155px] text-right mb-auto\"><\/span>\n    <\/div>\n  <\/div>\n<\/div>\n\n<\/div><!-- \/#report-chat-{id} -->\n\n<!-- Chat Styles (only injected once) -->\n<style>\n  .lg\\:col-span-16.min-w-0 { background-color: #F2F2E9; }\n  .cloudbeds-heading-paragraph { max-width: 800px !important; margin-top: 52px; }\n  @media (max-width: 768px){ .cloudbeds-heading-paragraph { margin-top: -10px; } }\n  .cloudbeds-solution-header { padding-bottom: 30px !important; }\n  .rc-msg { display: flex; gap: 15px; animation: rcFadeUp 0.25s ease; }\n  @keyframes rcFadeUp { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }\n  .rc-msg.user { flex-direction: row-reverse; }\n  .rc-msg-avatar { width: 46px; height: 46px; border-radius: 4px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 600; }\n  .rc-msg.assistant .rc-msg-avatar { background: #FFF878; color: #261C0A; }\n  .rc-msg.user .rc-msg-avatar { background: #BFDEFF; color: #261C0A; font-size: 14px; }\n  .rc-msg-bubble { max-width: 82%; padding: 17px; border-radius: 5px; font-size: 15px; line-height: 1.65; }\n  .rc-msg.assistant .rc-msg-bubble { background: #ffffff; border: 1px solid #D9D9CC; color: #261C0A; }\n  .rc-msg.user { padding-left: 10%; }\n  .rc-msg.user .rc-msg-bubble { background: #261C0A; color: #FBFBF6; max-width: 100%; flex: 1; }\n  .rc-msg-bubble .rc-title { font-weight: 600; font-size: 16px; margin-bottom: 8px; display: block; }\n  .rc-page-ref { display: inline-flex; align-items: center; gap: 3px; background: #DFEEFF; border: 1px solid #99CBFF; color: #261C0A; font-size: 11px; font-weight: 600; padding: 1px 7px; border-radius: 20px; margin-left: 3px; white-space: nowrap; vertical-align: middle; }\n  .rc-download-cta { display: inline-flex; align-items: center; gap: 10px; margin-top: 14px; padding: 11px 14px; background: #FFF878; border-radius: 6px; text-decoration: none; color: #261C0A; font-size: 13px; font-weight: 600; transition: background 0.15s; justify-content: space-between; }\n  .rc-download-cta:hover { background: #FFD944; }\n  .rc-typing-dot { width: 6px; height: 6px; border-radius: 50%; background: #B8B8A9; animation: rcBounce 1.2s infinite; display: inline-block; }\n  .rc-typing-dot:nth-child(2) { animation-delay: 0.2s; }\n  .rc-typing-dot:nth-child(3) { animation-delay: 0.4s; }\n  @keyframes rcBounce { 0%, 60%, 100% { transform: translateY(0); opacity: 0.4; } 30% { transform: translateY(-5px); opacity: 1; } }\n<\/style>\n\n<!-- Chat JavaScript (instance-scoped) -->\n<script>\n(function() {\n  var container = document.getElementById('report-chat-dd8344a9d5ebb8e7c1730031917f964c');\n  if (!container) return;\n\n  var cfg = JSON.parse(container.getAttribute('data-config'));\n  var urlParams = new URLSearchParams(window.location.search);\n  var QUESTION_LIMIT = urlParams.get('qs') === 'unlimited' ? 999999 : cfg.questionLimit;\n\n  var conversationHistory = [];\n  var isLoading = false;\n  var lastUserMsg = null;\n  var lastAssistantMsg = null;\n  var questionCount = parseInt(getCookie(cfg.cookieName) || '0', 10);\n\n  \/* Window-scroll offset (px) applied to the NEXT scrollToMessage() call only.\n     Higher value = the user's message lands further from the top of the viewport,\n     i.e. less dramatic page scroll. Auto-resets after use. *\/\n  var CHIP_SCROLL_OFFSET  = 200; \/\/ set by the chip click handler (first interaction)\n  var REPLY_SCROLL_OFFSET = 200; \/\/ set right before the after-reply scroll so the page pulls the user's last question back into view\n  var nextScrollOffset = 0;\n\n  \/* Track the source of the current question for the AJAX handler *\/\n  var pendingInputType = null;\n  var pendingQuestionId = null;\n\n  var input = container.querySelector('.rc-user-input');\n  var sendBtn = container.querySelector('.rc-send-btn');\n  var messagesEl = container.querySelector('.rc-messages');\n  var promptsSection = container.querySelector('.rc-prompts');\n\n  function getCookie(name) {\n    var match = document.cookie.match(new RegExp('(^| )' + name + '=([^;]+)'));\n    return match ? decodeURIComponent(match[2]) : null;\n  }\n  function setCookie(name, value, days) {\n    var expires = new Date(Date.now() + days * 864e5).toUTCString();\n    document.cookie = name + '=' + encodeURIComponent(value) + '; expires=' + expires + '; path=\/';\n  }\n  function saveCount() { setCookie(cfg.cookieName, questionCount, 30); }\n\n  function trackEvent(eventName, params) {\n    if (typeof gtag === 'function') {\n      params.report_title = cfg.reportTitle;\n      gtag('event', eventName, params);\n    }\n  }\n\n  \/**\n   * Push to dataLayer (GTM).\n   * Does NOT include question text for free_text \u2014 only metadata.\n   *\/\n  function dlPush(eventName, extra) {\n    window.dataLayer = window.dataLayer || [];\n    var payload = { event: eventName, chatbot_name: cfg.chatbotName || '' };\n    for (var k in extra) { if (extra.hasOwnProperty(k)) payload[k] = extra[k]; }\n    window.dataLayer.push(payload);\n  }\n\n  function updateCounterUI() {\n    var counter = container.querySelector('.rc-question-counter');\n    if (!counter) return;\n    var remaining = Math.max(0, QUESTION_LIMIT - questionCount);\n    if (remaining > 0) {\n      var label = cfg.questionsRemainingLabel || 'question\/\/questions remaining';\n      label = label.replace(\/(\\S+)\\\/\\\/(\\S+)\/, remaining === 1 ? '$1' : '$2');\n      counter.textContent = remaining + ' ' + label;\n    } else {\n      counter.textContent = '';\n    }\n  }\n\n  function lockChat() {\n    input.disabled = true;\n    input.placeholder = cfg.questionsExhaustedText || (\"You've used all \" + QUESTION_LIMIT + \" questions.\");\n    sendBtn.disabled = true;\n    container.querySelectorAll('.rc-prompt-chip').forEach(function(c) {\n      c.disabled = true;\n      c.style.opacity = '0.4';\n      c.style.cursor = 'default';\n    });\n    appendMessage('assistant', (cfg.limitReachedMessage || \"You've reached the question limit. Download the full report to explore all the data and insights.\") + '\\n---DOWNLOAD_CTA---');\n  }\n\n  updateCounterUI();\n  if (questionCount >= QUESTION_LIMIT) {\n    setTimeout(function() { lockChat(); }, 100);\n  }\n\n  input.addEventListener('input', function() {\n    sendBtn.disabled = input.value.trim().length === 0 || isLoading || questionCount >= QUESTION_LIMIT;\n    input.style.height = 'auto';\n    input.style.height = Math.min(input.scrollHeight, 120) + 'px';\n  });\n\n  input.addEventListener('keydown', function(e) {\n    if (e.key === 'Enter' && !e.shiftKey) {\n      e.preventDefault();\n      if (!sendBtn.disabled) {\n        \/* Free-text submission *\/\n        pendingInputType = 'free_text';\n        pendingQuestionId = null;\n        dlPush('soih_chatbot_question_submit', { input_type: 'free_text' });\n        sendMessage();\n      }\n    }\n  });\n\n  sendBtn.addEventListener('click', function() {\n    if (pendingInputType === null) {\n      \/* Click on send button with typed text (not from chip) *\/\n      pendingInputType = 'free_text';\n      pendingQuestionId = null;\n      dlPush('soih_chatbot_question_submit', { input_type: 'free_text' });\n    }\n    sendMessage();\n  });\n\n  container.querySelectorAll('.rc-prompt-chip').forEach(function(chip) {\n    chip.addEventListener('click', function() {\n      if (questionCount >= QUESTION_LIMIT) return;\n      var qId = this.dataset.qid || '';\n      var qPos = parseInt(this.dataset.pos, 10) || 0;\n\n      trackEvent('report_chat_prompt_chip_clicked', { prompt_text: this.dataset.q });\n\n      \/* dataLayer push for suggested question click *\/\n      dlPush('soih_chatbot_question_click', {\n        question_id: qId,\n        question_position: qPos\n      });\n\n      pendingInputType = 'suggested';\n      pendingQuestionId = qId;\n\n      nextScrollOffset = CHIP_SCROLL_OFFSET;\n\n      input.value = this.dataset.q;\n      sendBtn.disabled = false;\n      sendMessage();\n    });\n  });\n\n  function hidePrompts() {\n    if (promptsSection) promptsSection.style.display = 'none';\n  }\n\n  function formatMessage(text) {\n    text = text.replace(\/\\[pp?\\.\\s*(\\d+(?:[\u2013\\-]\\d+)?)\\]\/g, '<span class=\"rc-page-ref\">p.$1<\/span>');\n    text = text.replace(\/\\*\\*(.*?)\\*\\*\/g, '<strong>$1<\/strong>');\n    text = text.replace(\/\\*(.*?)\\*\/g, '<em>$1<\/em>');\n    text = text.replace(\/^### (.*$)\/gm, '<strong style=\"font-size:13px;display:block;margin-top:10px;margin-bottom:2px\">$1<\/strong>');\n    text = text.replace(\/^## (.*$)\/gm, '<strong style=\"font-size:14px;display:block;margin-top:12px;margin-bottom:4px\">$1<\/strong>');\n    text = text.replace(\/^[-\u2022] (.*$)\/gm, '<div style=\"display:flex;gap:6px;margin:3px 0\"><span style=\"flex-shrink:0;margin-top:2px\">\u2022<\/span><span>$1<\/span><\/div>');\n    text = text.replace(\/^(\\d+)\\. (.*$)\/gm, '<div style=\"display:flex;gap:6px;margin:3px 0\"><span style=\"flex-shrink:0;font-weight:600\">$1.<\/span><span>$2<\/span><\/div>');\n    text = text.replace(\/\\n\/g, '<br>');\n    return text;\n  }\n\n  function appendMessage(role, content) {\n    var msg = document.createElement('div');\n    msg.className = 'rc-msg ' + role;\n\n    var avatar = document.createElement('div');\n    avatar.className = 'rc-msg-avatar';\n    avatar.innerHTML = role === 'assistant' ? '<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M21.924 6.82436C19.7036 4.60561 16.3765 4.16725 13.7181 5.50811C13.6125 5.56144 13.5146 5.4249 13.5984 5.34109L16.6786 2.2632C16.7841 2.15771 16.7789 1.986 16.6692 1.88403C13.8893 -0.689873 9.54591 -0.62658 6.84286 2.07449C4.59608 4.31962 4.17441 7.69581 5.5749 10.367C5.63062 10.4731 5.49338 10.5733 5.40893 10.4889L2.26485 7.34712C2.15929 7.24163 1.98745 7.2469 1.88541 7.35649C-0.690379 10.1349 -0.62704 14.4746 2.07601 17.1756C4.29639 19.3944 7.62345 19.8328 10.2819 18.4919C10.3875 18.4386 10.4854 18.5751 10.4016 18.6589L7.32142 21.7368C7.21585 21.8423 7.22113 22.014 7.3308 22.116C10.1113 24.6899 14.4541 24.6266 17.1571 21.9255C19.4039 19.6804 19.8256 16.3042 18.4251 13.633C18.3694 13.5269 18.5066 13.4267 18.5911 13.5111L21.7351 16.6529C21.8407 16.7584 22.0125 16.7531 22.1146 16.6435C24.6904 13.8657 24.627 9.52544 21.924 6.82436ZM16.6539 12.1275C15.1919 12.7141 12.7146 15.1895 12.1276 16.6505C12.0818 16.7648 11.9182 16.7648 11.8724 16.6505C11.2854 15.1895 8.80813 12.7141 7.34605 12.1275C7.23169 12.0818 7.23169 11.9182 7.34605 11.8725C8.80813 11.2859 11.2854 8.81046 11.8724 7.34946C11.9182 7.23518 12.0818 7.23518 12.1276 7.34946C12.7146 8.81046 15.1919 11.2859 16.6539 11.8725C16.7683 11.9182 16.7683 12.0818 16.6539 12.1275Z\" fill=\"#261C0A\"\/><\/svg>' : (cfg.userLabel || 'You');\n\n    var bubble = document.createElement('div');\n    bubble.className = 'rc-msg-bubble';\n\n    if (role === 'assistant') {\n      var hasCTA = content.indexOf('---DOWNLOAD_CTA---') !== -1;\n      var clean = content.replace(\/---DOWNLOAD_CTA---\/g, '').trim();\n      bubble.innerHTML = formatMessage(clean);\n      if (hasCTA) {\n        var wrapper = document.createElement('div');\n        wrapper.className = 'rc-button-wrapper';\n        var cta = document.createElement('a');\n        cta.href = '#';\n        cta.className = 'rc-download-cta modal-trigger';\n        cta.setAttribute('value', 'open-form');\n        cta.innerHTML = '<span>' + (cfg.downloadButtonText || 'Download the full report') + '<\/span><span>\\u2192<\/span>';\n        cta.addEventListener('click', function() {\n          trackEvent('report_chat_download_cta_clicked', { source: 'chat_response', question_number: questionCount });\n        });\n        wrapper.appendChild(cta);\n        bubble.appendChild(wrapper);\n      }\n    } else {\n      bubble.innerHTML = formatMessage(content);\n    }\n\n    msg.appendChild(avatar);\n    msg.appendChild(bubble);\n    messagesEl.appendChild(msg);\n\n    if (role === 'user') {\n      lastUserMsg = msg;\n    } else if (role === 'assistant') {\n      lastAssistantMsg = msg;\n    }\n  }\n\n  function scrollToMessage(targetEl) {\n    if (!targetEl) return;\n    var extraOffset = nextScrollOffset;\n    nextScrollOffset = 0;\n\n    function align() {\n      if (!targetEl.isConnected) return;\n      \/* Rect-based delta is reliable regardless of offsetParent. *\/\n      var delta = targetEl.getBoundingClientRect().top - messagesEl.getBoundingClientRect().top;\n      messagesEl.scrollTop = messagesEl.scrollTop + delta;\n      if (extraOffset > 0) {\n        var y = targetEl.getBoundingClientRect().top + window.pageYOffset - extraOffset;\n        window.scrollTo({ top: y, behavior: 'smooth' });\n      }\n    }\n\n    \/* Align twice:\n       1) Immediately after next paint \u2014 fast path for short replies.\n       2) After ~350ms \u2014 by then the .rc-msg fade-up (0.25s) has ended,\n          the bot reply's markdown markup has fully laid out, and on iOS\n          the soft keyboard has retracted. Without this second pass,\n          rects measured during the animation land the scroll too far down. *\/\n    requestAnimationFrame(function () {\n      requestAnimationFrame(align);\n    });\n    setTimeout(align, 350);\n  }\n\n  function showTyping() {\n    var msg = document.createElement('div');\n    msg.className = 'rc-msg assistant rc-typing-msg';\n    var av = document.createElement('div');\n    av.className = 'rc-msg-avatar';\n    av.innerHTML = '<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M21.924 6.82436C19.7036 4.60561 16.3765 4.16725 13.7181 5.50811C13.6125 5.56144 13.5146 5.4249 13.5984 5.34109L16.6786 2.2632C16.7841 2.15771 16.7789 1.986 16.6692 1.88403C13.8893 -0.689873 9.54591 -0.62658 6.84286 2.07449C4.59608 4.31962 4.17441 7.69581 5.5749 10.367C5.63062 10.4731 5.49338 10.5733 5.40893 10.4889L2.26485 7.34712C2.15929 7.24163 1.98745 7.2469 1.88541 7.35649C-0.690379 10.1349 -0.62704 14.4746 2.07601 17.1756C4.29639 19.3944 7.62345 19.8328 10.2819 18.4919C10.3875 18.4386 10.4854 18.5751 10.4016 18.6589L7.32142 21.7368C7.21585 21.8423 7.22113 22.014 7.3308 22.116C10.1113 24.6899 14.4541 24.6266 17.1571 21.9255C19.4039 19.6804 19.8256 16.3042 18.4251 13.633C18.3694 13.5269 18.5066 13.4267 18.5911 13.5111L21.7351 16.6529C21.8407 16.7584 22.0125 16.7531 22.1146 16.6435C24.6904 13.8657 24.627 9.52544 21.924 6.82436ZM16.6539 12.1275C15.1919 12.7141 12.7146 15.1895 12.1276 16.6505C12.0818 16.7648 11.9182 16.7648 11.8724 16.6505C11.2854 15.1895 8.80813 12.7141 7.34605 12.1275C7.23169 12.0818 7.23169 11.9182 7.34605 11.8725C8.80813 11.2859 11.2854 8.81046 11.8724 7.34946C11.9182 7.23518 12.0818 7.23518 12.1276 7.34946C12.7146 8.81046 15.1919 11.2859 16.6539 11.8725C16.7683 11.9182 16.7683 12.0818 16.6539 12.1275Z\" fill=\"#261C0A\"\/><\/svg>';\n    var bu = document.createElement('div');\n    bu.className = 'rc-msg-bubble';\n    bu.innerHTML = '<div style=\"display:flex;gap:4px;align-items:center;padding:6px 0\"><span class=\"rc-typing-dot\"><\/span><span class=\"rc-typing-dot\"><\/span><span class=\"rc-typing-dot\"><\/span><\/div>';\n    msg.appendChild(av);\n    msg.appendChild(bu);\n    messagesEl.appendChild(msg);\n  }\n\n  function removeTyping() {\n    var t = container.querySelector('.rc-typing-msg');\n    if (t) t.remove();\n  }\n\n  async function sendMessage() {\n    var text = input.value.trim();\n    if (!text || isLoading || questionCount >= QUESTION_LIMIT) return;\n    \/* Dismiss the soft keyboard on mobile so iOS's visual viewport stops fighting our scroll. *\/\n    input.blur();\n    hidePrompts();\n    isLoading = true;\n    sendBtn.disabled = true;\n    input.value = '';\n    input.style.height = 'auto';\n    appendMessage('user', text);\n    conversationHistory.push({ role: 'user', content: text });\n    scrollToMessage(lastUserMsg);\n\n    if (questionCount === 0) {\n      trackEvent('report_chat_started', { question_text: text });\n    }\n    trackEvent('report_chat_question_sent', { question_number: questionCount + 1, question_text: text });\n\n    showTyping();\n\n    try {\n      var formData = new FormData();\n      formData.append('action', 'report_chat');\n      formData.append('nonce', cfg.nonce);\n      formData.append('report_id', cfg.reportId);\n      formData.append('chatbot_name', cfg.chatbotName || '');\n      formData.append('input_type', pendingInputType || 'free_text');\n      formData.append('question_id', pendingQuestionId || '');\n      formData.append('messages', JSON.stringify(conversationHistory));\n\n      var res = await fetch(cfg.ajaxUrl, {\n        method: 'POST',\n        body: formData\n      });\n      var data = await res.json();\n      removeTyping();\n      if (!data.success) {\n        console.error('[Report Chat] AJAX error:', data);\n      }\n      var reply = (data.success && data.data && data.data.reply) ? data.data.reply : 'Sorry, I could not generate a response.\\n---DOWNLOAD_CTA---';\n      appendMessage('assistant', reply);\n      conversationHistory.push({ role: 'assistant', content: reply });\n      nextScrollOffset = REPLY_SCROLL_OFFSET;\n      scrollToMessage(lastUserMsg);\n      questionCount++;\n      saveCount();\n      updateCounterUI();\n      if (questionCount >= QUESTION_LIMIT) {\n        trackEvent('report_chat_limit_reached', { total_questions: questionCount });\n        lockChat();\n      }\n    } catch (err) {\n      removeTyping();\n      appendMessage('assistant', 'Something went wrong. Please check your connection and try again.\\n---DOWNLOAD_CTA---');\n    }\n\n    \/* Reset pending source after send *\/\n    pendingInputType = null;\n    pendingQuestionId = null;\n\n    isLoading = false;\n    if (questionCount < QUESTION_LIMIT) {\n      sendBtn.disabled = input.value.trim().length === 0;\n    }\n  }\n})();\n<\/script>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":87,"featured_media":59039,"parent":58916,"menu_order":2,"comment_status":"closed","ping_status":"closed","template":"content-hub-page-report","meta":{"_acf_changed":true,"footnotes":""},"categories":[],"wf_page_folders":[11484],"class_list":["post-90197","page","type-page","status-publish","has-post-thumbnail","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.0 (Yoast SEO v27.0) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Pregunta al informe - El estado de los hoteles independientes 2026<\/title>\n<meta name=\"description\" content=\"\u00bfQuieres saber c\u00f3mo ha evolucionado el ADR en tu pa\u00eds? Desde datos de rendimiento hasta tendencias, preguntale al informe.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Pregunta al informe - El estado de los hoteles independientes 2026\" \/>\n<meta property=\"og:description\" content=\"\u00bfQuieres saber c\u00f3mo ha evolucionado el ADR en tu pa\u00eds? Desde datos de rendimiento hasta tendencias, preguntale al informe.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/\" \/>\n<meta property=\"og:site_name\" content=\"Cloudbeds\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Cloudbeds\/\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-24T00:44:34+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.cloudbeds.com\/wp-content\/uploads\/2026\/03\/og-soil-es.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@Cloudbeds\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/\",\"url\":\"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/\",\"name\":\"Pregunta al informe - El estado de los hoteles independientes 2026\",\"isPartOf\":{\"@id\":\"https:\/\/www.cloudbeds.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.cloudbeds.com\/wp-content\/uploads\/2026\/03\/og-soil-es.png\",\"datePublished\":\"2026-04-22T14:29:50+00:00\",\"dateModified\":\"2026-04-24T00:44:34+00:00\",\"description\":\"\u00bfQuieres saber c\u00f3mo ha evolucionado el ADR en tu pa\u00eds? Desde datos de rendimiento hasta tendencias, preguntale al informe.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/#primaryimage\",\"url\":\"https:\/\/www.cloudbeds.com\/wp-content\/uploads\/2026\/03\/og-soil-es.png\",\"contentUrl\":\"https:\/\/www.cloudbeds.com\/wp-content\/uploads\/2026\/03\/og-soil-es.png\",\"width\":1200,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.cloudbeds.com\/es\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"El estado de los hoteles independientes 2026\",\"item\":\"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"El estado de los hoteles independientes 2026\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.cloudbeds.com\/#website\",\"url\":\"https:\/\/www.cloudbeds.com\/\",\"name\":\"Cloudbeds\",\"description\":\"Hospitality Management Software for Hotels, Hostels and More\",\"publisher\":{\"@id\":\"https:\/\/www.cloudbeds.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.cloudbeds.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.cloudbeds.com\/#organization\",\"name\":\"Cloudbeds\",\"alternateName\":\"Cloudbeds Digital Arbitrage\",\"url\":\"https:\/\/www.cloudbeds.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.cloudbeds.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.cloudbeds.com\/wp-content\/uploads\/2025\/08\/logo-footer.svg\",\"contentUrl\":\"https:\/\/www.cloudbeds.com\/wp-content\/uploads\/2025\/08\/logo-footer.svg\",\"width\":240,\"height\":35,\"caption\":\"Cloudbeds\"},\"image\":{\"@id\":\"https:\/\/www.cloudbeds.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/Cloudbeds\/\",\"https:\/\/x.com\/Cloudbeds\",\"https:\/\/www.linkedin.com\/company\/cloudbeds\/\",\"https:\/\/www.youtube.com\/channel\/UCyfR7GappZBy-uziWO9WLdQ\"],\"description\":\"Cloudbeds is hospitality\u2019s only intelligent growth engine \u2014 a unified platform trusted by the world\u2019s most ambitious hoteliers across 150 countries. Built to challenge the limits of outdated tech stacks, Cloudbeds connects operations, revenue, distribution, and guest experience in one powerful, intuitive system. The platform is enhanced with Signals, a hospitality AI model giving hoteliers the power to anticipate demand, run smarter operations, and craft more personal, profitable guest journeys at scale. Founded in 2012, Cloudbeds has earned top honors from Hotel Tech Report (Top PMS, Hotel Management System, and Channel Manager, 2021\u20132026), the World Travel Awards (World\u2019s Best Hotel PMS Solutions Provider, 2022), and Deloitte\u2019s Technology Fast 500 (2025).\",\"legalName\":\"Cloudbeds Digital Arbitrage\",\"foundingDate\":\"2012-10-10\",\"numberOfEmployees\":{\"@type\":\"QuantitativeValue\",\"minValue\":\"501\",\"maxValue\":\"1000\"},\"publishingPrinciples\":\"https:\/\/www.cloudbeds.com\/es\/centro-recursos\/\",\"ownershipFundingInfo\":\"https:\/\/www.cloudbeds.com\/our-story\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Pregunta al informe - El estado de los hoteles independientes 2026","description":"\u00bfQuieres saber c\u00f3mo ha evolucionado el ADR en tu pa\u00eds? Desde datos de rendimiento hasta tendencias, preguntale al informe.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/","og_locale":"es_ES","og_type":"article","og_title":"Pregunta al informe - El estado de los hoteles independientes 2026","og_description":"\u00bfQuieres saber c\u00f3mo ha evolucionado el ADR en tu pa\u00eds? Desde datos de rendimiento hasta tendencias, preguntale al informe.","og_url":"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/","og_site_name":"Cloudbeds","article_publisher":"https:\/\/www.facebook.com\/Cloudbeds\/","article_modified_time":"2026-04-24T00:44:34+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/www.cloudbeds.com\/wp-content\/uploads\/2026\/03\/og-soil-es.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_site":"@Cloudbeds","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/","url":"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/","name":"Pregunta al informe - El estado de los hoteles independientes 2026","isPartOf":{"@id":"https:\/\/www.cloudbeds.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/#primaryimage"},"image":{"@id":"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/#primaryimage"},"thumbnailUrl":"https:\/\/www.cloudbeds.com\/wp-content\/uploads\/2026\/03\/og-soil-es.png","datePublished":"2026-04-22T14:29:50+00:00","dateModified":"2026-04-24T00:44:34+00:00","description":"\u00bfQuieres saber c\u00f3mo ha evolucionado el ADR en tu pa\u00eds? Desde datos de rendimiento hasta tendencias, preguntale al informe.","breadcrumb":{"@id":"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/#primaryimage","url":"https:\/\/www.cloudbeds.com\/wp-content\/uploads\/2026\/03\/og-soil-es.png","contentUrl":"https:\/\/www.cloudbeds.com\/wp-content\/uploads\/2026\/03\/og-soil-es.png","width":1200,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/pregunta-ia\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.cloudbeds.com\/es\/"},{"@type":"ListItem","position":2,"name":"El estado de los hoteles independientes 2026","item":"https:\/\/www.cloudbeds.com\/es\/informe-hoteleria\/"},{"@type":"ListItem","position":3,"name":"El estado de los hoteles independientes 2026"}]},{"@type":"WebSite","@id":"https:\/\/www.cloudbeds.com\/#website","url":"https:\/\/www.cloudbeds.com\/","name":"Cloudbeds","description":"Hospitality Management Software for Hotels, Hostels and More","publisher":{"@id":"https:\/\/www.cloudbeds.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.cloudbeds.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/www.cloudbeds.com\/#organization","name":"Cloudbeds","alternateName":"Cloudbeds Digital Arbitrage","url":"https:\/\/www.cloudbeds.com\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.cloudbeds.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.cloudbeds.com\/wp-content\/uploads\/2025\/08\/logo-footer.svg","contentUrl":"https:\/\/www.cloudbeds.com\/wp-content\/uploads\/2025\/08\/logo-footer.svg","width":240,"height":35,"caption":"Cloudbeds"},"image":{"@id":"https:\/\/www.cloudbeds.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Cloudbeds\/","https:\/\/x.com\/Cloudbeds","https:\/\/www.linkedin.com\/company\/cloudbeds\/","https:\/\/www.youtube.com\/channel\/UCyfR7GappZBy-uziWO9WLdQ"],"description":"Cloudbeds is hospitality\u2019s only intelligent growth engine \u2014 a unified platform trusted by the world\u2019s most ambitious hoteliers across 150 countries. Built to challenge the limits of outdated tech stacks, Cloudbeds connects operations, revenue, distribution, and guest experience in one powerful, intuitive system. The platform is enhanced with Signals, a hospitality AI model giving hoteliers the power to anticipate demand, run smarter operations, and craft more personal, profitable guest journeys at scale. Founded in 2012, Cloudbeds has earned top honors from Hotel Tech Report (Top PMS, Hotel Management System, and Channel Manager, 2021\u20132026), the World Travel Awards (World\u2019s Best Hotel PMS Solutions Provider, 2022), and Deloitte\u2019s Technology Fast 500 (2025).","legalName":"Cloudbeds Digital Arbitrage","foundingDate":"2012-10-10","numberOfEmployees":{"@type":"QuantitativeValue","minValue":"501","maxValue":"1000"},"publishingPrinciples":"https:\/\/www.cloudbeds.com\/es\/centro-recursos\/","ownershipFundingInfo":"https:\/\/www.cloudbeds.com\/our-story\/"}]}},"_links":{"self":[{"href":"https:\/\/www.cloudbeds.com\/es\/wp-json\/wp\/v2\/pages\/90197","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.cloudbeds.com\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.cloudbeds.com\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.cloudbeds.com\/es\/wp-json\/wp\/v2\/users\/87"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cloudbeds.com\/es\/wp-json\/wp\/v2\/comments?post=90197"}],"version-history":[{"count":0,"href":"https:\/\/www.cloudbeds.com\/es\/wp-json\/wp\/v2\/pages\/90197\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/www.cloudbeds.com\/es\/wp-json\/wp\/v2\/pages\/58916"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.cloudbeds.com\/es\/wp-json\/wp\/v2\/media\/59039"}],"wp:attachment":[{"href":"https:\/\/www.cloudbeds.com\/es\/wp-json\/wp\/v2\/media?parent=90197"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.cloudbeds.com\/es\/wp-json\/wp\/v2\/categories?post=90197"},{"taxonomy":"wf_page_folders","embeddable":true,"href":"https:\/\/www.cloudbeds.com\/es\/wp-json\/wp\/v2\/wf_page_folders?post=90197"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}