=== Dealroot changelog ===

Every version of Dealroot, the newest first.

= 0.31.4 =
* A checkout form that an order wins gets the order number and the products, and its summary and topics are the products: the checkout of a shop holds the address but not the cart, so the assistant could not tell what was bought.

= 0.31.3 =
* The icons of the sources show again in the reports: newer WordPress versions remove images embedded in style attributes, so the script now paints the icons, and the letter stays where an icon cannot be shown.

= 0.31.2 =
* Leads: when a period such as Today hides new leads from before it, the list and the board say so, with a link to all periods. "Needs your attention" on the overview opens the new leads and the won deals without an amount over all periods, as it counts them.

= 0.31.1 =
* Form analytics show only the days counted the new way, from the day of this update: the days before missed visitors without consent and forms sent by script, so they would have shown too few sent forms. The counters of the day of the update start again.

= 0.31.0 =
* Overview: the periods Today and Yesterday, compared with yesterday by the same time and with the day before.
* Overview: "Show the numbers" below the form that people give up lists every form of the week with its starts, sends and every field visitors left it at.
* Form analytics count every visitor, without cookies and without consent: only the form, the label of the field and whether it was sent. The privacy text says so.
* A form sent by script, e.g. the block checkout of WooCommerce, counts as sent when the page sends what was typed or goes to the next page right after its button.
* The board links to the enquiries put into spam.
* A lead shows the keyword of its ad click; add-ons can add more facts at the top of a lead.
* Old links of the overview keep the filters of add-ons, e.g. the person a lead belongs to.

= 0.30.0 =
* New screen Reports, with charts of the chosen period: revenue and ad costs over time, enquiries and new customers, rings of the enquiries and of the revenue by channel, which channel brings customers, when enquiries arrive in the week, how fast you answer, phone or computer, and why deals were lost.
* Above the charts: the last 7 days next to the 7 before, and this month day by day next to last month.
* Hover over a chart to see its numbers; "Show the numbers" opens the same numbers as a table.
* Each channel keeps its colour on every chart, chosen so neighbouring colours stay apart, also for colour-blind readers.
* The PDF report shows the same charts.
* Charts and figures use the currency most of your revenue comes in.
* "Ask about your leads" moved from the overview to a screen of its own, Ask, with room for the whole conversation: it grows with the page while the field stays at the bottom, and ideas what to ask or say are below.
* Topics are what people want to buy or have done. How an order is delivered, picked up or paid, e.g. "Pickup" or "Delivery", is no longer a topic, on every site and in every language; topics read before are cleaned on the update.
* "Phone or computer": the device most enquiries came from is the darkest.
* "The last 7 days" and "Revenue and ad costs": the highest column always fits its chart.
* The month card is called "Won this month" and says that it counts every deal won this month, whenever its enquiry came, while the figures at the top count the deals of the enquiries of the period.
* "Last 7 days", "Last 30 days" and "Last 90 days" are whole days: today and the days before it, the same days as on the charts, compared with as many whole days before.
* Overview: a question mark next to the cost per lead, the cost per customer, the gross profit and the profit on ad spend shows how each is counted, with your numbers.
* Security: every screen, chart and email passes its markup through wp_kses() when it is printed; the PDF report and the remembered list or board view need the nonce of the screen; the public routes of the tracker, Telegram and the sign-up check their permission in their own callback.
* For add-ons: the tracker tells at which field a visitor left a form half done, and the form statistics list the fields where visitors stop most.

= 0.29.0 =
* Reports speak plainer: the attribution switch now reads "How they first came" and "Just before writing", with one line explaining the difference.
* Each column of the overview carries a short explanation on hover, from Visits to ROAS.
* Campaigns: traffic without a campaign is grouped below the campaigns and shown by its channel, so the list no longer mixes both.
* The PDF report explains each number under its tile, notes how enquiries are counted, and leaves out empty city, country, device and browser lists.
* Board cards show the short summary of the enquiry.
* Answers written in WhatsApp or in your email program go into the conversation only once you confirm they were sent; one noted by mistake can be removed.
* "Ask about your leads" is more compact: each row of an answer fits on one line with its bar, and a title that only repeats the question is left out.
* For Pro: the list and the board can show who takes care of each lead and filter by person.
* Campaigns from an ad platform whose links name no campaign show the clicks the platform counted instead of an empty Visits column, with a tip how to add the campaign to the links.
* The groups of the settings menu stand out in yellow and larger type.
* Faster with many leads: the overview of a site with 20,000 enquiries and a year of visits loads in about half the time. Sums of past days are kept until the next day, and new indexes help the lists and the first answer.
* Fewer database queries on each page of the site: the options read there load together with the others.
* The live view asks open pages less often while nobody watches: once a minute when a page lies idle, at most every 20 seconds while it is read. The first sign of a page comes after eight seconds, so a customer clicking through a shop costs no extra requests.
* WooCommerce: the email and Telegram message about a new order go out in the background, so the customer no longer waits for them when placing the order.

= 0.28.3 =
* Quick replies saved in the settings keep their own texts, but the parts still as they came, such as the subject "Your enquiry", follow the language of each enquiry.

= 0.28.2 =
* The advice of the week on the overview is written in the language of your screen; Telegram and the weekly email keep the language of the team.
* The response time counts the first answer sent from the lead too, and leaves out orders, which the shop answers itself, and spam.
* Settings: the note on unsaved changes only shows when something was changed, and the group names in the menu lead to their sections.
* Asking by voice: while recording, the button turns into Stop with the time that has passed.
* A done order in the conversation with the assistant shows its check mark once.
* Replies, subjects and emails to a customer follow the language of the enquiry also when the assistant did not read it, e.g. an order from a checkout: the language is told from the words of the form.
* The reply panel says what happens: files and copying right under the text, then the two ways to send, and one line on where the answer goes and how to write it in your own email program.

= 0.28.1 =
* The assistant on the overview is a conversation: questions and answers stay as messages, also after reloading, until you start a new conversation.
* An answer with nothing to count says so, and when the period lies before Dealroot started recording, from which day there is data.

= 0.28.0 =
* The assistant goes on from the question before: "and last month?" or "only Google Ads" is read with what was asked just before.
* It answers about people, cities, campaigns, sources, countries, browsers, landing pages, weekdays and hours, compares with the period before and knows ad costs, clicks, cost per lead and return on ad spend.
* Answers show bars, open the leads they are about with one click and link to the list, or to a CSV download when a list or export is asked for.
* Told to answer someone, the assistant writes the answer into that lead, ready to read, add photos or documents and send.
* Leads without a message, e.g. orders or calls written down, get a written answer too.

= 0.27.1 =
* A form renamed on the Forms screen keeps its leads and figures under the new name.
* A newsletter sign-up is marked as such on the Forms screen also when it was switched on before.

= 0.27.0 =
* Orders know who bought, also when the payment takes the buyer to PayPal or Klarna: the filled-in checkout is read as it is left (only name, email address and phone, kept for a day for the order that follows), and so is the buyer a shop tells Google Ads for enhanced conversions.
* Shops can tell paid orders from the server: do_action( 'dealroot_order_paid', array( 'number', 'value', 'currency', 'items', 'name', 'email', 'phone' ) ). It is one lead with the order of the browser, which brings the source; the amount of the server counts.
* The delivery fee a shop reports with the purchase event counts in the value of the order.
* Orders are read from their products: they are the topics, and the assistant no longer guesses around them. An order without a known buyer is named after its number.
* Ad costs count from the day Dealroot started recording, so the return on ad spend compares like with like.
* Say what to do in “Ask about your leads”, by voice or typed: “Move Meier to contacted”, “Eunice won, 84 euros”, “Remind me of Schmidt on Friday”. Telegram knows “contacted” and “qualified” too, and reminders come by email without Telegram.
* The settings list is grouped and scrolls on its own. On the board, won and lost deals show those of the last 30 days, with the earlier ones in the list.

= 0.26.0 =
* A report of any period to save as a PDF or print: enquiries, customers, revenue and conversion, channels, campaigns, sources, landing pages and forms, devices, browsers, cities and countries, enquiries by day, week or month, topics, why deals were lost and the deals won. With Dealroot Pro also the ad costs, the cost of an enquiry, the return on ad spend and what is left after them.
* Open it from the overview or the Export menu, or ask the assistant, e.g. “Report for September”.
* The assistant answers more: deals and revenue on the day they were won (“deals today”), who waits for an answer, deals lost and why, the average deal, contact clicks, ad costs, cost per enquiry and return on ad spend, by person, city, campaign, source, browser, landing page, weekday or time of day, and compared with the period before. Questions it cannot count are answered from the figures of the last months instead of “I do not know”.

= 0.25.0 =
* Answer from the lead by email, sent by your site in the design of your emails, with photos, PDFs and other documents from the media library or your computer.
* Each lead keeps the conversation: what you answered, when, by whom and with which files, by email, from Telegram, on WhatsApp or in your email program, and the automatic confirmations.
* When the same person writes again through a form while their enquiry is open, the message goes into that lead, which comes first with “New message”, and you are told as for a new enquiry. A new lead is only made once the last one was won or lost.

= 0.24.0 =
* One rule for languages: Dealroot writes to you and your team in one language – the language of the owner’s profile, or the one chosen in the settings – and to each customer in the language of their enquiry. Replies to start with no longer go out in the language of your screen.

= 0.23.1 =
* When a payment does not go through and the customer tries the checkout again, the first try is merged into the order instead of staying on the board as a new enquiry.
* A checkout that no order followed is pointed out on the lead: a good moment to get in touch.
* A lead can be deleted permanently right from its screen, after a question.
* The assistant no longer names a product, a quantity or a budget the enquiry does not mention.

= 0.23.0 =
* New: designed emails. Confirmations, answers and offers go out with your logo, your color and your signature, light like a letter, with a plain text part for every mail program. The emails for you – the alarm about broken forms, reminders, new enquiries – show the facts and a button. Turn it off for plain text.
* New: choose the name and address the emails come from – an address on the domain of your site, so they do not end up as spam – and where the replies of customers go, any address you read.
* New: "Email me each new enquiry", with what the AI assistant read, where the person came from and buttons to answer.
* Changed: the overview starts with what needs doing and the report of where your leads come from; below it, the short answers in rows of cards, the question to the assistant, and the advice as tabs.
* Changed: orders are never confirmed by Dealroot, also when they come through a checkout form, as the shop sends its own email.

= 0.22.1 =
* Changed: what Dealroot Pro needs for free times from the calendar in the confirmation, and for reminders of occasions to won customers.

= 0.22.0 =
* New: why deals are lost. A lost lead asks why with one click – too expensive, the date did not fit, no answer, went elsewhere, not offered – and your note suggests the reason. The overview shows the reasons of the last 90 days and the channel that stands out, e.g. "Enquiries from Paid search are lost on price more often than others". Telegram understands "Müller cancelled, too expensive" too.
* New: drafts in your style. The answers you send from a lead, from Telegram or from "Go through new enquiries" – also after you changed a draft – teach the AI assistant how you greet, close and write. Kept on your site only, without names, email addresses and phone numbers.
* New: go through new enquiries. One button moves spam to Spam and has the AI assistant write a draft for each new enquiry; then you read, change and send them one after the other. These drafts have an allowance of their own.
* New: "Ask about your leads" answers "why do we lose deals?" too.

= 0.21.0 =
* New: an alarm when your forms seem broken – no enquiry for three days while visitors come as usual, forms sent in the browser that never arrive, forms started but no longer sent, or a site that cannot send emails. Told once in Telegram or by email, and shown first in the overview.
* New: away mode for holidays. Set the day you are back and a note in the settings: every enquiry gets a confirmation that says when the answer comes, reminders and the morning message rest, and when you are back the overview lists what came in, the one likely worth the most first.
* New: what the visits before an enquiry say – "3 visits in 5 days before writing; looked at the prices" – in the lead and in Telegram. Someone who came back often or looked at the prices counts as promising.
* New: turn the questions people ask about a topic into a draft page of answers with one click.
* New: hints in your forms. When earlier enquiries often lacked the date, the place or the quantity, visitors who leave it out get a short hint while typing.
* New: "Ask about your leads" answers questions about visits and devices too – "how many visits came from smartphones in September?" – and enquiries can be counted per device.
* New: below the question, how many fast answers of the AI assistant are left this month.

= 0.20.0 =
* New: past the monthly allowance of fast answers, the assistant no longer stops: a slower model on the server of Dealroot goes on answering until the month ends, and the settings say so.
* New: with Dealroot Pro, use your own key of OpenAI, Google Gemini, Anthropic Claude or Mistral and the model you choose. You pay the provider directly, and there is no allowance. The key is checked once and kept encrypted on the server of Dealroot, not on your site.
* Changed: drafts and confirmations are written in the language of the enquiry, as the assistant read it, also when the site has another language.

= 0.19.2 =
* Changed: plain spam – several links, offers of SEO, backlinks or traffic, the openings of mass mailings – is sorted out before the AI assistant reads it, and a message sent twice from the same address is read once. Your AI allowance lasts longer.

= 0.19.1 =
* New: "Ask about your leads" answers questions that are not about counting too, from what Dealroot knows about your site – its name and address, how this month goes, what waits for an answer – in the language of your screen, also when the question is typed in another alphabet.
* New: ask by voice – click the microphone, speak, and the question is written down and asked.
* Changed: the example questions are answered at once, and a question asked again the same day does not wait for the AI assistant.

= 0.19.0 =
* New: the Telegram bot works as your assistant when the AI assistant is on. Tell it about a call in a voice message – "Müller called about the roof, about 2,000 euros" – and it becomes a lead with its summary and amount. When a visitor clicked your phone number shortly before, the lead takes the source and click ID of that visit, so calls count in your reports and can be reported to your ads; one button undoes it if it was another call.
* New: short orders, spoken or typed: mark a deal won or lost with its amount, be reminded of someone on a day you name, have an answer written with what you want to say, add a note, or ask about your numbers.
* New: paste or forward a conversation to the bot – a chat copied or exported from WhatsApp, a forwarded Telegram message or an email – and it becomes a lead with name, phone, email, summary and budget. "Add lead" fills in its form from a pasted conversation too.
* New: clicks on phone numbers and messenger links keep the click IDs of the ad, for calls that become leads later.

= 0.18.0 =
* New: requests about personal data. When someone asks in an enquiry to delete their data or for a copy of it, the lead, Telegram and "Needs your attention" say so, with the date one month later by which to answer. One click starts the request in the privacy tools of WordPress, which confirm the address by email. Works without the AI assistant too; such enquiries never go to spam and get no automatic confirmation.
* New: insults and threats are marked. They get no confirmation and no AI draft – you decide whether to answer.
* New: enquiries in another language say which one, and one click translates them into yours, on the lead screen or from Telegram. The translation is kept.
* New: a morning message in Telegram at 8:00 – new enquiries since the day before, the promising ones with their budget, the ones still waiting and what was won yesterday. Nothing is sent on a quiet morning (can be turned off).

= 0.17.0 =
* New: Dealroot remembers your customers. A new enquiry from someone who asked or bought before says so in the lead, in Telegram and to the AI assistant, which then writes as to a returning customer.
* New: "Similar enquiries" on the lead screen – how many enquiries about the same topic became customers in the last year, for how much, and how a quick answer made a difference.
* New: a reminder in Telegram when a promising enquiry – urgent, an order, with a budget or from a returning customer – has waited 30 minutes for an answer (can be turned off).
* New: "What Dealroot did in the last 30 days" on the overview and once a month in Telegram – enquiries answered through Dealroot and what they brought, confirmations sent, spam sorted out.
* Changed: spam and job applications no longer count as topics.

= 0.16.0 =
* New: the AI assistant reads the budget, the date, how many and the place an enquiry names. The budget fills in the deal value until you enter the real one.
* New: enquiries the assistant sees as spam go to Spam by themselves, without a notification (can be turned off).
* New: optional confirmation by email within a minute of each enquiry – thanks, what was asked for, and up to two questions about what is still missing for your offer. Nothing is promised in your name; replies go to you.
* New: "Write with AI" shows the answer word by word as it is written.
* New: answer from Telegram – the message about a new lead has a button that writes the answer; send it to the person by email, or reply to it to change it first (needs HTTPS).
* New: ideas from your enquiries on the overview – topics many ask about that no page of your site mentions, with the questions people ask, and details most enquiries lack while your forms do not ask for them.
* New: advice for the week above "Your week in short", in the weekly email and in Telegram.
* New: "Ask about your leads" – questions in plain words, counted from your own data.

= 0.15.0 =
* New: AI assistant, one switch in the settings and no account or key. It sums up every enquiry in one sentence, gives it one to three topics, marks urgent ones, orders, job applications and likely spam, and writes a first draft of your answer with "Write with AI" in the reply box. Free up to a monthly allowance; Dealroot Pro includes more.
* New: "What customers ask for" on the overview – the topics of the enquiries with their leads, customers, revenue and the channel they mostly come from.
* New: the Telegram message of a new lead carries its summary, and the week in short names the topic most asked about.
* The setup assistant offers the AI assistant too.

= 0.14.0 =
* New: leads and orders that give a postcode or a town are placed there on the map and in the lead, from the free postcode lists of GeoNames, instead of the place of the internet connection, which is often a town or more off.
* New: optional second city database, MaxMind GeoLite2 City, with a free MaxMind account. It is asked first when it knows the place to within 200 km; the settings show what each database finds for your own connection.
* Improved: the lead screen tells whether its place comes from the address or, approximately, from the internet connection, and the live screen says how exact places are.
* WooCommerce orders also keep the billing postcode and city.

= 0.13.0 =
* New: quick replies. Answer a lead from its screen with one click by email or WhatsApp, with the name and the form filled in; a new lead is marked as contacted. Three replies to start with, editable in the settings.
* New: "Your week in short" on the overview – how many leads came compared with the week before, the customers won, the channel that brought most and the one that changed most, where visitors turn into leads most often, a form many people give up and the city most leads came from.
* New: the same sentences open the weekly email and can be sent to Telegram every Monday morning.
* Fixed: the WhatsApp button of a lead whose number was saved with spaces.

= 0.12.0 =
* New: setup assistant. Five short steps after installing: find the forms, choose what to count, send a test enquiry that turns green on the screen when it arrives, connect Telegram and choose the cookie consent mode. Every step can be skipped.
* New: the Telegram bot no longer needs a chat ID from elsewhere. Write to the bot and the assistant finds the chat by itself.
* New: the assistant recognises common cookie banner plugins and suggests the fitting consent mode.

= 0.11.0 =
* Improved: the report by campaign splits visits and leads without a campaign by channel, e.g. "No campaign: Organic search" and "No campaign: Direct", instead of one row "(not set)".
* Improved: scrolling the page over a map no longer zooms the map; + and − zoom, and two fingers on a phone.
* New: the live screen shows which message a visitor saw or clicked, and add-ons such as Dealroot Pro can send a visitor a message from there, which appears on their screen within seconds.
* Pages report a little more often while someone watches the live screen.

= 0.10.4 =
* Improved: visits of a country whose city is not known, e.g. from before cities were turned on, no longer sit as a point in the middle of that country when its cities are on the map; they are named below the map.

= 0.10.3 =
* Improved: smaller points on the maps, so places close to each other stay apart.

= 0.10.2 =
* New: the maps zoom with the mouse wheel and with two fingers on a phone or tablet.
* New: larger towns are shown on the maps as landmarks, in the language of the admin, more of them the closer you zoom in.

= 0.10.1 =
* Fixed: on sites behind a proxy of the host, the city of visitors is found from the visitor address the proxy passes on, not from the address of the proxy.
* New: the settings test the location with your own visit and say why a city is not found; "Download now" fetches the location database when the scheduled download does not run.
* Improved: visitors on the live screen who arrived before the location database was ready get their city on their next page.

= 0.10.0 =
* New: the Live screen shows who is on your site right now – a map with a point per city that pulses while people are there, every visitor with the page, where they came from, the device and the form they are filling in, and a feed of what happens: arrivals, forms being filled in, forms sent and new leads. The menu and the overview show how many people are on the site.
* Pages report that they are open every 20 seconds while they are in front, with a random key per browser tab; nothing that is typed is sent, and the data is removed ten minutes after the visitor leaves. The live view can be turned off under Settings → Tracking.

= 0.9.9 =
* New: a map of your visitors on the overview, with a point per city (per country where the city is not known), sized by visits and coloured by leads and sales, the top places next to it, zoom, dragging and a view of the whole world. Click a place to see its leads.
* New: forms built without a form tag, where a script sends the fields when the button is clicked, are found by the form scan and saved from the first submission.
* Improved: country names are shown with their code instead of an emoji flag, which some systems show as an image from another server.

= 0.9.8 =
* New: the device (smartphone, tablet or computer), the browser, the country and the city of every visit and lead. The overview groups visits and leads by each of them, a lead shows them under its enquiry, the list of leads next to the date, and the export has them as columns.
* New: the country comes from your CDN or from the time zone of the visitor's browser, without any setup. Cities come from the free DB-IP Lite database, which your server downloads once a month when you turn on "Cities of visitors" in the settings. IP addresses are never stored.

= 0.9.7 =
* Improved: forms the scan finds and shows as switched on count as leads right away, without a click on Save.
* Improved: before the first lead, the overview also shows the forms visitors started and the field where they gave up. The first steps are shorter there and can be hidden.
* Improved: forms are reported in the form analytics under their heading instead of their HTML ID.
* Improved: forms whose ID, class or address names a newsletter or a subscription are recognized as newsletter sign-ups.

= 0.9.6 =
* Improved: the overview shows the visits by channel, source, campaign and landing page from the first visit on, not only once the first lead has arrived. The first steps are shown below the report until then.

= 0.9.5 =
* Improved: a form in the template of many products is named after the words on its button, such as "Jetzt anfragen", instead of after the product of the first page it was found on.
* Improved: the form scan opens two entries of each post type.
* New: until the first lead arrives, the overview shows whether visits are counted, so you see at once that tracking works or that a cache still serves pages without the Dealroot script.

= 0.9.4 =
* Improved: the form scan opens one entry and the archive of every post type, so it finds forms in the template of a type a theme adds, such as products of a shop the theme builds itself.
* Improved: the form scan follows links to pages of a kind it has not seen yet, e.g. pages a theme serves without a post.
* Improved: forms without an ID, a name or an action are recognized by a data attribute of the theme or by their fields, both by the scan and when a visitor sends them.
* Improved: a form picked or switched off before keeps that choice when a new scan would describe it differently.

= 0.9.3 =
* Improved: the form scan also looks at the first pages of the site as a browser shows them, with their scripts run, so it finds forms that a theme or a script puts into the page, such as a contact section or a pop-up.
* Improved: the form scan opens the pages under the address the admin screens use, so it works when the site's settings say http:// or leave out www., and it opens pages that only show themselves to logged-in users.
* Improved: forms are named after the heading right before them; a newsletter sign-up is named after the label of its email field, and headings of other sections are no longer used.

= 0.9.2 =
* New: forms the scan cannot find, such as a checkout that only appears with a full cart, a form a script draws into the page or one in a pop-up, are saved from the first time a visitor sends them. They are listed on the Forms screen, where you can switch them off. Newsletter sign-ups are only listed.
* New: orders that your shop reports to Google Analytics or Google Ads as a purchase, through gtag or Google Tag Manager, are saved as won deals with order number, amount and products. When the visitor sent the checkout form just before, that lead is marked as won instead. Each order counts once.

= 0.9.1 =
* Improved: the report by source shows ads apart from unpaid visits of the same service: Google Ads next to Google, Microsoft Advertising next to Bing, and the ads on Facebook and Instagram as Meta Ads. The leads list of a row shows only its leads.
* Improved: the timeline and the leads list name the ad platform of a paid visit, such as Google Ads.

= 0.9.0 =
* New: an overview with the key figures of the period, the leads that wait for an answer, the pipeline and where your leads come from.
* New: a board view of the leads. Drag a lead to another stage; when it is won, Dealroot asks for the amount.
* New: the lead screen shows the stage as steps you can click, and a timeline from the first visit to the sale.
* New: the settings are arranged in sections with switches, and remind you of changes that are not saved yet.
* New: add a form by its ID on the Forms screen, for example one in a pop-up that the scan does not find, and scan one more page, such as a product page. Pages scanned this way are opened again by every later scan, and the scan also opens products without a price and one product of each category.
* Improved: all Dealroot screens have a new look and their own navigation.
* Improved: forms that a theme sends from script, with form.submit() or jQuery, are saved as leads too, with the labels of their fields and hidden fields such as the product of an order request.
* Improved: one pop-up that serves many products gets one name, without the product from its title, and newsletter sign-ups found by the scan start switched off.
* Improved: whole amounts are shown without cents.
* Improved: the report on the overview uses the full width, so the columns with costs fit next to the others.
* Improved: sources are listed by name with what kind of source they are, and the spellings of one service, such as ig, IG and instagram.com, are one row. Their leads list shows the leads of all spellings.
* New: icons of the sources, loaded once from each website after you turn them on.
* New: the report shows ten rows per page and pages through the rest, up to 250 rows.
* New: the conversion files for Google Ads and Microsoft Advertising can be downloaded right next to the setup steps in the settings. They hold the won deals of the last 90 days, which the platforms still accept.
* Improved: the amount of a lost deal is shown struck through, as it does not count in revenue.
* Improved: the timeline of a lead shows every page the visitor opened as its own step, with its full address and title, in the order of the visit.
* New: the timeline shows the icon and name of each visit's source, and with the enquiry the kind of device, the system and the browser – including in-app browsers such as Instagram or Facebook – and how long the visitor had been on the site. Only these names are stored, not the browser's identification.
* Improved: the report by landing page shows each page by its title – the site name for the home page – with the address below.
* Fixed: an amount typed as 12,400 or 12.400 is read as twelve thousand four hundred, not as twelve.
* Fixed: the period and view you pick are remembered only from the links and forms of the Dealroot screens, which carry a nonce.

= 0.8.1 =
* Fixed: saving the settings shows the "Settings saved" confirmation again.
* Fixed: the icons on the Email, Call and WhatsApp buttons of a lead are centred.
* Improved: the hint under the deal value explains what the amount of a won lead is used for.
* Improved: channels without leads no longer show a bar in the report.
* Improved: deleting the plugin with "Delete all leads and settings" also removes its temporary data.

= 0.8.0 =
* New: form scan under Leads → Forms – lists every form on your site with its pages, finds forms built without a form plugin and embedded forms from Calendly, Typeform, HubSpot and others, and lets you choose which forms count as leads.
* New: 16 more integrations – Everest Forms, WS Form, SureForms, MetForm, HappyForms, Jetpack Forms, Kadence Blocks, Spectra, Otter Blocks, Divi, Bricks, Beaver Builder, Thrive, Mailchimp for WordPress, MailPoet and Ultimate Member.
* New: submissions of embedded HubSpot and Tally forms with their answers, and Typeform responses and Calendly bookings with their source.
* New: step-by-step setup for the Google Ads and Microsoft Advertising conversion of won deals, with a separate conversion name for Microsoft Advertising.
* New: reports show gross profit and profit on ad spend when margins are available, e.g. from Dealroot Pro.
* Improved: forms picked by the scan keep the name you give them in the reports.

= 0.7.1 =
* Changed: requires WordPress 6.8 or later. Translations are loaded by WordPress itself.
* Improved: every database query is fully prepared, including table and column names.

= 0.7.0 =
* New: form analytics – started and sent forms, completion rate and the field where visitors give up, in the Leads report.
* New: leads link to their Microsoft Clarity session recording, and sent forms and contact clicks are marked in Clarity.
* New: `recording_url` in the webhook payload.
* Improved: the tracking script is minified (about 3 KB compressed); the readable version is used when SCRIPT_DEBUG is on.

= 0.6.0 =
* New: reports show ad spend, cost per lead and return on ad spend when costs are available, e.g. from Dealroot Pro.
* New: `dealroot_report_breakdown` and `dealroot_report_totals` filters.

= 0.5.0 =
* New: `dealroot_lead_sidebar` action for add-ons on the lead screen.

= 0.4.1 =
* Fixed: the "Export conversions" button is aligned with the other buttons.

= 0.4.0 =
* New: visit counting and conversion rates per channel, source, campaign and landing page.
* New: path to the enquiry – visits, days since the first visit and pages viewed – on every lead.
* New: response time per lead and as a median in the report.
* New: change the status from the list; entering a deal value when a lead is won.
* New: offline conversion exports for Microsoft Advertising and Meta.
* New: read-only abilities for the WordPress Abilities API and MCP.

= 0.3.0 =
* New: contact clicks on phone, WhatsApp, email, Telegram, Viber, SMS and map links, reported by channel.
* New: reports by channel, source, campaign, landing page and form, with period selection, first or last visit attribution, and drill-down to the leads.
* New: add leads by hand, edit contact details and source, offline channels (phone call, walk-in, word of mouth).
* New: returning-contact markers and a list of previous enquiries on each lead.
* New: weekly summary email, dashboard widget, getting-started guide and Site Health check.
* New: `{dealroot_attribution}` email tag for every form plugin.
* Fixed: revenue in different currencies is no longer added up into one number.

= 0.2.0 =
* New: capture any HTML form with the data-dealroot attribute or a CSS selector.
* New: Ninja Forms, Formidable Forms, Forminator, JetFormBuilder and WooCommerce orders.
* New: webhooks for Make, Zapier, n8n and custom systems, with optional HMAC signature.
* New: phone numbers in international format with Call and WhatsApp buttons.
* New: click IDs from X, Pinterest, Snapchat, Reddit, Quora, Yandex and Impact; more search engines, social networks and AI assistants worldwide.
* New: default currency and phone country follow the site language or WooCommerce.
* Improved: right-to-left admin layout.

= 0.1.0 =
* First release.
