You can run Matomo On-Premise on a VPS you control instead of sending analytics data to a third-party service. A production installation consists of a web server, PHP, MySQL or MariaDB, HTTPS, a separate Matomo database, browser tracking code, and scheduled cron-based report archiving. Start with Matomo’s published resource guidance, then adjust for page views, retention, plugins, and the number of people opening reports.
Antihost offers Linux VPS plans with full root access, unlimited traffic on a 1 Gbps port and a 14-day free trial.
What self-hosted Matomo includes
Matomo On-Premise is free to download and runs on infrastructure that you administer. The application stores visits, goals, events, reports, and configuration in your own database. A typical deployment uses a subdomain such as analytics.example.com, points that name to your VPS, and serves Matomo through a web server with a valid TLS certificate.
As an Amazon Associate I earn from qualifying purchases.
The basic stack has four operational parts:
- Web server: receives browser requests for the Matomo interface and tracking endpoint.
- PHP runtime: executes Matomo and its required extensions.
- MySQL or MariaDB: stores configuration and analytics data.
- Cron or systemd scheduling: archives reports in the background so users do not trigger expensive calculations while viewing dashboards.
Self-hosting gives you control over the database location, retention policy, network access, and backups. It does not automatically make a measurement program lawful or anonymous; those outcomes depend on configuration and your legal basis for collecting data.
Choose VPS capacity before installing
Matomo’s published figures are starting points, not guarantees. Retention duration, plugin count, report complexity, concurrent dashboard users, bot traffic, and the frequency of archival jobs can move the requirement substantially.
#1 Best Overall
- [Ultra-Lightweight Ear Buds Designed for Small Ears] Each earbud weighs only 3.7g and features a compact, ergonomic in-ear design made especially for small ears. Secure, low-profile, and comfortable for workouts, all-day wear or overnight sleeping.The ultra-slim profile sits flush in your ear with no hard edges poking or rubbing, so you can even sleep on your side without discomfort.
- [Immersive Stereo Sound with TOZO OrigX Technology] TOZO OrigX tuning delivers clear vocals, balanced mids, and natural stereo sound for music, podcasts, and videos.
- [Long Battery Life for Daily Use] Get up to 7 hours of playtime on a single charge, with up to 32 hours total using the charging case—ideal for workdays, commuting, and extended listening sessions.
- [Bluetooth 5.3 & Stable Connection] Bluetooth 5.3 provides fast pairing, stable wireless performance, and reduced dropouts as you move around home or office.
- [Deep Bass with Clear Vocals] High-performance drivers produce punchy bass while keeping vocals clean and detailed for everyday listening.
| Workload | Application and database arrangement | CPU | Memory | SSD |
|---|---|---|---|---|
| Small installation | Single VPS baseline | 2 CPUs | 2 GB RAM | 50 GB |
| About 1 million page views per month | Single-server recommendation | 4 CPUs | 8 GB RAM | 250 GB |
| About 10 million page views per month | Separate application and database capacity | Matomo recommends separating application and database resources; exact figures depend on workload. | ||
The 1-million-page-view figures are Matomo’s guidance for roughly that monthly volume, not a performance guarantee for every site. A database with two years of detailed logs needs more storage than one retaining only a few months. Leave free space for indexes, temporary tables, upgrades, and backup staging rather than sizing the disk to the data total alone.
When one VPS is enough
A single machine is reasonable when traffic is modest, report users are few, and a short maintenance window is acceptable. Keep the operating system, Matomo files, database, and scheduled jobs on the same host, but still separate database credentials and backup destinations.
Signals that you have outgrown it
- Archiving consumes most of the day or overlaps with the next scheduled run.
- Dashboard requests compete with database writes and become consistently slow.
- Memory pressure causes the database or PHP workers to be killed.
- Disk growth leaves too little room for indexes, upgrades, or a restore operation.
- You need independent maintenance or availability for the web tier and database.
At higher volumes, move the database to dedicated capacity, add application servers, and put a load balancer in front of them. A CDN can help deliver static interface assets, but it does not replace database and archiving capacity.
Prepare the domain, operating system, and access
Use a dedicated hostname
Create a DNS record such as analytics.example.com pointing to the VPS address. Use a hostname rather than an IP address so HTTPS certificates, future migration, and reverse-proxy rules remain manageable. Confirm that the record resolves from the networks where administrators will use Matomo.
Start with a supported Linux image
Select a distribution that receives security updates and that you can administer through SSH. Create a non-root administrative account, use key-based authentication, and disable password SSH login after verifying that the key works. Keep an emergency console or provider recovery method available before changing SSH settings.
Set basic firewall boundaries
- Allow SSH only from trusted administration networks where practical.
- Expose HTTP and HTTPS for certificate issuance and web traffic.
- Do not expose MySQL or MariaDB to the public internet; bind it to localhost or a private network.
- Permit outbound connections needed for operating-system and Matomo updates.
Synchronize system time, configure automatic security updates when your operational process permits them, and monitor disk, memory, and CPU usage from the beginning. Monitoring is most useful when it records the baseline before traffic arrives.
Install the web and database stack
Web server and PHP
Install your chosen web server, the latest PHP 8.x release supported by your distribution, and every PHP extension listed by the Matomo system checker. Matomo recommends the latest PHP 8.x release for efficiency and speed. Do not assume a generic PHP package includes database drivers, XML handling, multibyte strings, image processing, or archive support; let the installer’s system-check page identify missing modules.
Rank #2
- 【IP68 Waterproof Multifunctinal Smart Watch】Torjalph fitness activity tracker smart watch is IP68 waterproof technology ,you can wear it when swimming,handwashing,it's rain-proof which means that you perform multiple exercise modes outside without worrying about sweat or rain corroding your fitness smart watch,and this watch equipped with a 230 mAh large capacity battery magnetic charging ,and this sports activity tracker watch can be used 5-7 days If fully charged.
- 【Larger 1.83'' Full Screen Watch & Multi-dial Selection】1.83 inch full HD color touch screen smart watch for men / women provides excellent 240*284 resolution image quality ,This Bluetooth smart watch offers a better touch experience and remarkable immersion and ,more than 200 watch faces for you to choose from App"Da Fit ", you can change the dial style according to your mood to wear keeping the world on your wrist
- 【Accurate Activity Tracker Smart Watch 】sports watch activity tracker uses sweat and dust resistant breathable silicone strap, our Fitness Tracker Smart Watch for Android iOS Phones supports 12 sports modes,walking,running,bicycle,swimming,badminton,basketball,football,rope skipping. This bluetooth calls smart watch for men women is lightweight and stylish, bringing more convenient and relaxing sports experience while also providing more protection.
- 【Your 24 Hour Personal Daily Health Monitor】Fitness watch for women men full touch screen IP67 waterproof bluetooth smartwatch for Android iOS Phones with heart rate blood pressure monitor multifunction Andriod smart watch with steps counter sleep monitor sports fitness watch, monitoring blood oxygen saturation allows you to understand your physical condition in real time to track fitness progress ,to know your health status in time.
- 【More Functions Bluetooth Call Smart Watch】This fitness activity smart watch full screen for iPhone and Android phones includes a bunch of new features including:The bluetooth smart watch can hang up the phone, receive and display WhatsAPP /Text /Facebook /Twitter /Messenger reminder.Support sedentary reminder, alarm clock, stopwatch, timer,weather information,music control, remote camera control compatible with Android 5.0 and above or iOS 9.0 and above smartphones.
Set PHP limits deliberately for your workload. Upload size, execution time, memory limit, and the number of PHP workers affect installation, plugin operations, and administrative screens. Increase a limit only when a documented operation requires it, and record the change so an upgrade does not silently revert it.
MySQL or MariaDB
Use MySQL 8 or newer, or a current MariaDB release supported by Matomo. Create a database dedicated to Matomo and a separate database user with privileges only on that database. Generate a long, unique password and store it in a password manager or secrets system rather than in shell history or shared notes.
Keep the database on a private interface. If you later move it to another host, allow connections only from the Matomo application network and require encrypted transport when traffic leaves the local machine.
Free tools Windows power users keep installed
One-click scans. No signup required.
Filesystem ownership
Place Matomo in a web root dedicated to the analytics hostname. The web-server account needs the permissions Matomo documents for configuration, temporary files, and uploads; the rest of the code should not be broadly writable. Excessive write permission makes a compromised plugin or web process more dangerous.
Download Matomo and complete the installer
Obtain the current On-Premise package from Matomo’s official distribution channel, verify the archive using the checks provided with that release, and extract it into the analytics virtual host. Keep the package outside unrelated websites and do not mix files from different Matomo versions.
- Point the web server’s document root at the Matomo directory and configure the hostname.
- Open the hostname in a browser. Matomo runs a system check before allowing installation to continue.
- Resolve every required PHP extension, writable-directory, database, and configuration error shown by the checker.
- Enter the database host, database name, dedicated username, and password you created. Use a private database address rather than a public endpoint.
- Create the Matomo super-user with a unique password and an address that can receive account notifications.
- Add the first website, including its name and canonical URL. Matomo then displays the JavaScript tracking snippet for that property.
- Save the generated configuration and confirm that the installer reports a completed setup.
After setup, remove or lock down installer access as Matomo advises, protect the configuration file from download, and ensure directory listings are disabled. Keep administrative URLs behind HTTPS and, where feasible, an IP allowlist or VPN.
Enable HTTPS and protect administration
Issue a certificate for the analytics hostname and redirect HTTP to HTTPS. Tracking requests and administrator logins can contain identifiers and credentials; sending them over plain HTTP exposes them to interception and can cause browsers to block requests from secure websites.
Rank #3
- [Low Noise High Fidelity] New bee guitar cord with 22AWG oxygen-free-copper center conductors provides enhanced signal transfer, the PVC insulation material and the high-density stranded copper double shield provide noise rejection for quiet operation
- [Ideal for Choice] New bee 1/4 straight and right angle metal connectors, ensures a secure connection in any instrument, pedal, or amp jack. L shape great fro on stage guitar stands
- [Wide Compatible] Suitable for mixer, power amplifier, microphone, effector, decoder, equalizer, electoronic organ, electric guitar, electric bass and other electronic equipments. Widely used in the installation of smart home, karaoke speaker, professional stage audio, etc
- [Easy Disassemble] Making incidental repairs quick and easy! Very nice, flexible cable
- [Dont Hesite to Order] 24 hours customer services and professional technology team are standing by
- Enable secure cookies and verify that the login session remains secure after a redirect.
- Use modern TLS settings supplied by your web server or certificate automation.
- Apply a restrictive content-security policy only after testing Matomo’s interface and any approved plugins.
- Require strong administrator passwords and enable two-factor authentication where your Matomo version and chosen method support it.
- Keep the operating system, PHP, web server, database, Matomo core, and plugins patched.
Do not place the database port, PHP-FPM socket, or administrative database tools on the public interface. Review web-server access logs for unexpected requests and protect those logs as carefully as the Matomo database.
Add tracking and verify data flow
Install the JavaScript tag
Copy the tracking tag generated for each Matomo site into the page template, normally just before the closing </body> tag. If you manage several domains, create a Matomo site for each property or use the cross-domain configuration appropriate to your measurement plan. Avoid copying a tag from one property into another; the site identifier in the script determines where visits are stored.
Test before tuning reports
- Load a page containing the tag in a private browser window.
- Open Matomo’s real-time visitor view and confirm that the visit appears.
- Inspect the browser’s network panel for a successful request to the Matomo tracking endpoint.
- Check the web-server log and database growth if real-time data does not arrive.
- Test consent and opt-out behavior on a device with cookies cleared, not only on an already-consented browser.
A missing visit can result from an incorrect site ID, a blocked script, a content-security policy, ad-blocking software, mixed-content errors, or consent logic that never releases the tag. Fix collection first; report configuration cannot recover a request that was never sent.
Schedule cron-based report archiving
Report archiving is part of a production Matomo deployment. Matomo’s documentation warns that without cron, it recalculates statistics whenever someone opens a report, slowing page loads and increasing database load.
Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchWindows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallHow archiving changes behavior
The scheduled job processes raw visits into period reports before users request them. Dashboard views can then read prepared data instead of repeatedly scanning detailed logs. Schedule the job during a period that leaves enough CPU, memory, and database capacity for normal tracking.
Set up the scheduler
- Identify the operating-system user that owns or can safely execute Matomo’s console command.
- Use the Matomo installation’s documented console archiving command rather than running an arbitrary web request.
- Create a cron entry or systemd timer at the interval Matomo recommends for your version and traffic pattern.
- Send output and errors to a protected log, and alert when the command exits unsuccessfully.
- Run one archive manually, confirm that the reports update, and then let the scheduler run automatically.
Do not run overlapping archive jobs. If one run takes longer than the interval, lengthen the interval, reduce the report workload, or add capacity before launching parallel workers.
Deploy with Docker when containers fit your operation
Matomo publishes an official Docker image and documents a Compose-style arrangement with separate application, database, and cron services. Containers can make repeatable deployments and upgrades easier, but they do not remove the operational duties of storage, patching, backup, and access control.
Rank #4
- Digital Family Calendar: BSIMB digital calendar wall touch screen puts an end to your chaotic life. Designed for busy families, the digital calendar keeps you organised and in step with your family. Assign different colours and tasks to each family member to make family scheduling easier and more intuitive.
- Easy Setup and Auto-Sync: Plug in, connect to WLAN and auto-syn your electric calendar in minutes. Digital wall calendar compatible with Google calendar, iCloud calendar, Outlook calendar, Cozi calendar and Yahoo calendar. Add events directly on the device or through the ecalendar app. Electronic calendar stays current whether you're at work or traveling—no manual updates needed.
- All-In-One Home Assistant: Smart calendar builds habits and encourage independence with personalised chores. Display daily meal plan to reduce the daily ‘What's for dinner?’ stress. To-do lists keep track of everything you want. Turning chores into valuable achievements with stars and rewards, making life easier and more enjoyable.
- Manage Anytime Anywhere: BSIMB electronic calendar for family stay connected with the powerful ecalendar app. Access and manage your digital wall calendar anytime, anywhere with free features like stars & rewards, photo screensaver, chore charts, meals plans, to-do lists etc. Electronic planner paid features like Magic Import tailor advanced tools for users with special needs.
- Stay in Touch with Loved Ones: Share photos or videos from your phone to electronic wall calendar with app, instantly update your life moment, and keep in touch with your family, especially those who are far away; you can also surprise your smart calendar digital wall by sending him a wish card; it's also great for keeping tech-illiterate elders in touch with the youngsters.
Persist the state that matters
- Mount the Matomo configuration outside the container filesystem.
- Persist the plugins and any uploaded assets that must survive image replacement.
- Persist the database volume on reliable storage with enough free space for growth.
- Store backups outside the VPS or outside the failure domain of the host.
Keep the public surface small
Expose only a reverse proxy or web server publicly. Keep the database and cron services on an internal container network. Pin image versions instead of tracking an unreviewed latest tag, test upgrades against a backup, and document the exact image, environment variables, volume paths, and restore procedure.
Container isolation is not a substitute for host hardening. Patch the host kernel and container runtime, restrict management sockets, protect environment files containing database credentials, and monitor volume usage.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Configure privacy for GDPR-sensitive analytics
Matomo can support privacy-conscious measurement, but compliance depends on your purpose, jurisdiction, consent design, and retention decisions. Matomo notes that IP addresses can be personal data under GDPR, so treat an unconfigured installation as a personal-data system.
Minimize what you collect
- Enable IP masking or full anonymisation before production collection.
- Collect cookies only when they are necessary for the measurement plan and lawful in your jurisdiction.
- Use User IDs only when you have a documented purpose and legal basis; do not send account identifiers by default.
- Turn on geolocation or detailed referrer data only when the resulting precision is needed.
- Do not place names, email addresses, order notes, or other direct identifiers in page URLs, event labels, or custom dimensions.
Consent, notice, and opt-out
Matomo’s consent guidance states that consent may be required in some situations. Decide whether your operation requires prior consent, which features are blocked until consent, and how a visitor can withdraw it. Publish a privacy notice that identifies the controller, purposes, categories of data, retention, rights, and the way to contact you. Provide an opt-out mechanism that works independently of the analytics cookie.
Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Repair Windows errors before they cause bigger problems3Scan for outdated or missing drivers - takes under a minuteRetention and server logs
Matomo recommends retaining detailed raw visitor logs for only three to six months for privacy reasons, subject to your operational requirements. Configure automatic deletion or an equivalent scheduled process and document any longer retention needed for security, accounting, or legal obligations.
IP masking in Matomo does not erase a full address that may already be present in the web-server or reverse-proxy logs. Rotate those logs, restrict access, set their own retention period, and include them in your privacy review. Backups also contain personal data; encrypt them, limit access, and apply a deletion schedule.
Legal review
Technical settings cannot determine your lawful basis. Obtain jurisdiction-specific advice about consent, legitimate interest, cross-border access, employee monitoring, and data-subject requests. Build a process to export or delete a person’s data when your legal obligations require it.
Best Value
Backups, updates, and recovery
Back up more than the database
- Take consistent database backups and test restoring them to an isolated environment.
- Back up Matomo configuration, approved plugins, and uploaded assets.
- Keep at least one encrypted copy off the VPS and protect backup credentials separately.
- Record the Matomo version, PHP version, database version, and deployment settings with each backup set.
A backup that has never been restored is an assumption, not a recovery plan. Define how much data you can lose and how long the service may be unavailable, then choose backup frequency and storage accordingly.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Upgrade in a controlled order
- Read the release notes and confirm PHP and database compatibility.
- Take and verify a fresh backup.
- Test the upgrade on a staging copy when the site is business-critical.
- Update Matomo and plugins through the supported mechanism, then run the system check.
- Verify login, tracking, real-time visits, scheduled archiving, and key reports.
- Keep a rollback plan until the first complete archive and reporting cycle succeeds.
Troubleshoot common failures
The installer reports missing requirements
Read the exact failed check, install the corresponding PHP extension or database capability, restart the relevant service, and rerun the checker. A package installed for one PHP version may not be loaded by the version used by the web server, so compare the command-line and web-server PHP configurations.
Real-time visits are absent
Confirm the tag is present in the rendered page, the site ID is correct, HTTPS is valid, and the browser request reaches the Matomo hostname. Check consent gates, content-security policy, reverse-proxy rules, and server logs. Test from a clean browser because extensions can block tracking requests.
Reports are slow
Check whether cron is running and whether archive jobs finish. Look for database locks, insufficient memory, a nearly full disk, and plugins that add expensive dimensions. Reduce unnecessary retention or plugin work before increasing concurrency.
The database fills the disk
Measure growth by table and by date, then apply the documented log-deletion policy. Do not delete tables manually while Matomo is running. Increase storage only after confirming that retention, backups, temporary space, and indexes all fit the new capacity.
Recommended Free Tools
A Docker redeploy loses settings
The required configuration or database volume was probably stored inside an ephemeral container. Stop the stack, restore the persistent volumes from backup, pin the intended image version, and document volume mappings before redeploying.
Decide whether self-hosting is right for your site
Self-hosted Matomo suits teams that need direct control of analytics storage, network location, retention, and customization and that can maintain a Linux server. A managed service may be a better operational choice when you cannot patch systems, monitor jobs, test restores, or respond to security incidents.
Make the decision using these criteria:
- Monthly page views and expected growth.
- How long detailed visitor data must be retained.
- Required report latency and number of concurrent users.
- Recovery-point and recovery-time objectives.
- Staff skill for Linux, PHP, databases, Docker, and privacy operations.
- Whether your organization can provide a lawful basis, consent controls, notices, deletion, and access handling.
For a small site, begin with Matomo’s 2-CPU, 2-GB RAM, 50-GB SSD baseline, enable HTTPS, configure privacy before collecting production data, and schedule archiving immediately. Reassess capacity from measured CPU, memory, database, archive duration, and disk trends rather than from page views alone.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →




