Using a Proxy With Mojeek: Regional Signal, Session State and Request Pace
Mojeek is one of the few services that doesn't rent its results from another engine: it crawls the web with its own crawler and builds its own index. This page explains where the exit address touches ranking on that index, how to separate browser state from your measurement, and how to plan your request pace.
Single-source indexHow does having a single party produce the results simplify proxy decisions?
02
Region and languageThe separate roles of exit country and interface language setting in ranking.
03
Pace managementQuery interval, verification screens and an exponential back-off scheme.
04
VerificationScope control, leak tests and keeping a measurement log.
Most of the proxy discussion around search engine pages gets complicated because it is unclear who produced the result. Many services take their result set from a partner; you think you are measuring one party while in fact you are recording the behaviour of a second provider. Mojeek is a plainer basis in this respect: crawling, indexing and ranking all happen under the same roof.
That simplicity doesn't expand the proxy's job, but it clarifies it. When your exit address changes, what is affected is not the whole ranking but one of the several inputs the engine reads as a regional cue. The remaining inputs — interface language, the country filter on the settings page, the query itself — live on the browser side and the proxy doesn't touch them.
The sections below unpack this distinction in order: which layer looks at the network and which looks at you; which of them must be held fixed when measuring; and how to plan the pace as the scale grows.
What does a proxy change on an engine that crawls its own index?
A Mojeek query passes through three separate layers. At the top is the query and interface layer: the phrase you type, the language you pick, the country filter you tick on the settings page. All of this is held client-side and is outside the proxy's field of view — changing the exit doesn't reset a preference, because the preference sits in your browser's storage.
The middle layer is the index and ranking. The engine's own crawler has collected, parsed and ordered the documents. This layer isn't rebuilt per person from request to request; the same query under the same conditions returns largely the same set of documents. When you wonder why a result is near the top, the place to look is not your proxy setting but this layer's indexing behaviour.
The bottom layer is transport and exit. The request is established over TCP, encrypted with TLS, and the only network identity visible on the server side is your exit IP address. What the engine can read from that address is limited: which autonomous system (ASN) the address belongs to and roughly which country it appears to be registered in. For how classification works, the article on ASN and IP reputation is a good starting point.
The practical benefit of separating the three layers is this: when you see a change in results, you first ask which layer moved. Did your preference change, did the index refresh, or did your exit simply shift to another country? Teams that don't ask this question attribute a difference caused by a browser preference to the proxy and look for the solution in the wrong place.
Note
On an HTTPS connection the proxy server cannot see the text of your query; it only opens a tunnel with CONNECT and carries encrypted bytes. What it can see is which host you connect to. That is why choosing a provider is as much a trust decision as a technical preference.
DIAGRAMThe three layers a Mojeek query passes through
You can scroll the diagram horizontally to inspect it
The proxy touches only the bottom layer. Preference and index behaviour stay put even when the exit address changes.
How do exit country and interface language differ in ranking?
Regional effect isn't tied to a single button; it is the resultant of two inputs that operate independently of each other. The first is the cue on the network side: the country your exit address is registered in. The second is the explicit preference on the application side: the interface language and the country filter on the settings page. When the two don't point the same way, the result is a mixed profile that a real user rarely produces.
A concrete example: if you use a German exit but leave the interface in English, the network layer says Germany while the application layer declares a particular language preference. The page you get back sits somewhere between the two and is identical neither to what a user in Germany sees nor to what a user who keeps their language English sees. If you are making comparisons, you need to record this intermediate state, or you will write two measurements into the same column.
The right setup is to fix both inputs deliberately. If you want to examine a country's result surface, take the exit from that country, set the interface language to that country's common language, and set the country filter in the same direction. For the country list see the proxy locations page, and for the TR view the Turkey exit .
Input
Where it is held
Does the proxy affect it?
What to do when measuring
Exit IP country
Network layer
Yes, directly
Fix on a single country for each series
Interface language
Browser preference
No
Keep fixed in the profile; don't change it mid-series
Country filter
Settings page
No
Record whether it is on or off
Query language
The text you enter
No
Repeat the same query without translating it
A single rule largely solves the problem: change only one variable per series. If you are changing the country, leave the language fixed; if you are changing the language, keep the exit in place. A difference that comes out of a measurement where two variables moved together tells you nothing about which input produced it.
Keeping browser state out of the measurement
A privacy-focused engine may not be profiling you through an account; that doesn't mean your measurement is clean. Most of the state affecting how the page arrives already sits in your browser: previously saved preference cookies, rules injected by extensions, a content blocker hiding certain blocks, the window width and the font scale.
The most insidious thing about these state residues is that they carry over without you noticing. Last week you ticked a country filter; this week, when you start a new series with the same profile, the filter is still on and you mistake it for a proxy difference. Likewise, if an extension hides some of the links on the page, you count fewer results than there really are.
The solution isn't complicated, but it requires discipline. Open a separate browser profile for measurement; keep only the proxy definition and the minimum necessary extensions in it. Start each series with clean storage and don't change preferences until the series is over. Don't keep any logged-in tab in the same profile — a tab with an active session keeps generating requests in the background for as long as it stays open.
Keep the measurement profile completely separate from your everyday profile.
Note the window width; the layout changes with width.
Keep the content blocker off in the measurement profile, or run every series with the same setting.
Clear storage before starting the series, not in the middle of it.
Write down which profile you measured with; results are profile-specific.
Once you have this arrangement in place, the difference you see when you change the exit really does come from the exit. The differences you saw before that usually come from the browser's memory, and no proxy setting will fix that.
Matching query pace to pool size
For one-off manual searches, pace is not an issue. But once you set up a monitoring routine that runs dozens of queries back to back, pace becomes the first limiting factor. A dense sequence of requests arriving from the same exit at short intervals produces a pattern that doesn't resemble human usage, and you are likely to meet a verification screen.
A verification screen isn't a punishment, it's a slow-down signal. The right response is not to retry at the same speed but to back off gradually: increase the wait time exponentially and return to the normal pace after a few runs. This page is about tuning the pace so verification screens are never triggered, not about getting past them.
Pace and pool size are two sides of the same equation. Once you have decided how many queries you will run per hour, you need enough addresses to keep the load per exit at an acceptable level. In most monitoring work, reducing the number of queries is a cheaper decision than increasing the number of addresses; the aim of the measurement is comparability, not volume. If you are opening parallel requests, concurrent connection limit must also be taken into account.
If you genuinely need access at scale, look first at the engine's own documented search interface. Working through an official interface gives more predictable results and is in line with what both parties expect. Before any arrangement that turns to page scraping, you should read robots.txt and the terms of service.
Warning
Trying to get around the verification screen is not the subject of this page. What to do when you meet one is to stop, lengthen the wait time and, if necessary, shrink your daily query budget. Compliance with the terms of service is the user's responsibility.
DIAGRAMThe pace plan for a query series
You can scroll the diagram horizontally to inspect it
The stage durations are an example plan, not measured values; adapt them to your own budget.
Choose an exit for Mojeek monitoring
Datacenter is preferred for low-volume monitoring, ISP for fixed series spanning weeks, and residential for multi-country view checks.
Choose whichever you need from our residential proxies, datacenter proxies, IPv6 and ISP solutions. Every plan comes with unlimited options, 99.9% uptime, rotating proxies, sticky sessions and 24/7 support. Ideal for web scraping, ad verification, SEO monitoring and digital data collection.
ISP ProxyStatic Turkish IPs registered to an ISP
ISP-registered static Türkiye IPs; they combine datacenter speed with the reputation of a real carrier. Ideal for long sessions and low-ping use.
Which exit type is enough for crawling an independent index?
Reading a public results page that requires no login is a far less demanding job than signing in on social platforms. Reaching for the most expensive exit type is therefore usually unnecessary; the decision is made on volume, continuity and country diversity.
A datacenter proxy is the first option to try for low-volume, short-term monitoring work: it gives the highest bandwidth and the lowest unit cost. It is plainly visible that the addresses sit in datacenter ASNs; that usually causes no problem when reading public pages, but it increases the likelihood of verification as the pace rises.
ISP proxyworks with static addresses hosted in the provider's ASN. If you want to measure from the same address across a comparison series spanning weeks, this type is a better fit — the address is fixed, so you don't have to attribute the difference between two measurements to an address change. Residential proxy is reserved for work that requires broad country and city diversity; its unit cost is high and it is billed on data transferred.
Job
Suitable exit
Why
A few queries a day, single country
Datacenter
Volume is low, cost is the deciding factor
Weekly repeated fixed series
ISP
The address stays fixed, so the series is comparable
Multi-country view checks
Residential
Broad country and city diversity
Short-term one-off check
Free list
For learning and testing purposes only
How many people a pool is shared with is a variable independent of type; the pace of another job using the same address alongside you can show up in your measurement. For learning-oriented trials a free proxy list is enough — but not for work that requires continuity.
Which requests are covered depends on where you define the proxy
The first question in setup is the protocol. An HTTP proxy sits at the application layer; it reads plain HTTP requests and opens a tunnel with CONNECT for HTTPS. SOCKS5 is at the transport layer and does not interpret the protocol it carries. Both work in a browser; the differences become apparent with non-browser clients. For the distinction, see the difference between HTTP and SOCKS5 article.
The second question is scope. A proxy defined system-wide affects all applications; that is the broadest scope, but it also routes your everyday work. A rule defined for a browser profile or a single application covers only that process; it has few side effects, but in return there is a risk that some requests fall outside it. Because search pages mostly come from a single domain, that risk is smaller than with social media pages.
The third question is where the domain name will be resolved. With an HTTP proxy the target name is declared to the proxy in plain text and the proxy performs the resolution. With SOCKS5 the behaviour depends on the client: some clients resolve the name on their own network, others hand it to the proxy. If the resolution happens on your network, the target domain is visible to your local DNS server — details in where DNS is resolved in SOCKS5 the article.
Field
Example value
Description
The server sends
proxy.example.com
The hostname in your panel
Port
8080
Common for HTTP; SOCKS5 may be on a separate port
Username
username
Mandatory on exits with authentication
Password
password
Taken from the panel, not shared
These values only show the format. Immediately after setup, verify your exit with the my IP address tool; where you configured the setting and where the traffic actually goes are not always the same.
DIAGRAMRequest sequence: from the browser to the engine's front end
You can scroll the diagram horizontally to inspect it
Where the domain name is resolved depends on your setup; the sequence in the diagram shows the common case of resolution on the proxy side.
Leak verification and the measurement log
Defining a proxy does not prove that all traffic goes through it. After setup, three things need to be tested separately. The first is domain name resolution: if the browser resolves names with the local resolver, your target is visible to your provider. DNS leak test reports this.
The second is the WebRTC interface. This browser interface can operate independently of the proxy setting and can expose your real addresses to a page; WebRTC leak test shows the status. The third is IPv6 bypass: if your exit is IPv4-only but IPv6 is enabled on your device, a request to a target reachable over IPv6 can bypass the proxy entirely.
Once verification is done, it's time to keep records. What makes a search measurement defensible is not the result itself but having written down the conditions under which it was taken. Keep at least these fields: date and time, query text, exit country and type, interface language, country filter status, browser profile name, window width. Looking back months later, these seven fields tell you whether two measurements are comparable.
A screenshot alone is not evidence; without a conditions line beside it, there is no way to know when, from where and with what settings it was taken. In a series that repeats the same query over weeks, this log is the only way to tell whether the shift you see comes from an index refresh or from a change in your own setup.
What goes wrong, and where you should stop?
Symptom
Likely cause
Check
The page loads but the expected country view doesn't appear
The country filter is off or the language preference is different
Re-read the settings page and the profile preferences
407 Proxy Authentication Required
Credentials are not being sent or the IP authorisation has lapsed
Verify the username, password and authorised IP list
An intermediate point is establishing the TLS session with its own certificate
Outside a corporate network, do not click past the warning, change the exit
An unexplained difference between two measurements
The profile state or the window width has changed
Compare the conditions lines in your log
The first row in this table is the most common one, and it is almost never caused by the proxy. If the regional view isn't coming through as you expected, check the two preferences on the browser side first; going down to the network side is the next step.
A certificate warning is a separate category and must be taken seriously. A correctly set-up HTTPS proxy does not interfere with the TLS session; if you see a warning, your traffic is being opened and re-encrypted at some point. On a corporate network that may be a deliberate configuration; on an exit you don't know, it is a sign to stop.
Finally, you have to accept the limits: a proxy gives you an approximate sample of the page a user in another country sees, not an exact copy. The page you see is also shaped by your device class, your language and your preferences. To work with that limit in mind on the competitive analysis side, see the setups on the proxy for SEO tools page.
Frequently asked questions about Mojeek and proxies
01Do Mojeek's results come from another engine?
No. Mojeek crawls the web with its own crawler and builds its own index; ranking is done on that index. For proxy work this means the behaviour you measure belongs to a single party — there is no second result provider coming into play in the background.
02Does the ranking change completely when I switch exit country?
No. The exit country is only one of several regional cues; the interface language and the country filter on the settings page live on the browser side, and the proxy doesn't touch them. If you want to see a marked difference, you need to set all three inputs in the same direction.
03I turned on the country filter but the results didn't change — why?
The filter is saved as a preference and kept in browser storage. If you cleared your measurement profile or looked with a different profile, the filter may not have been applied. On a narrow query the filter's effect may also not be visible; run the comparison with the same query filtered and unfiltered.
04Should I buy more exits to speed up my queries?
Review the number of queries first. In monitoring work the aim is comparability, not volume, and removing unnecessary repetitions is both cheaper and healthier than increasing the number of addresses. If you genuinely need access at scale, the engine's documented search interface is the first place to look.
05Does using a proxy make the search page load faster?
Generally no. Because an extra hop is added, connection time gets longer in most setups; a proxy does not reduce latency. There is a rare exception where your default route is circuitous, and that can only be established by measurement and doesn't count as a rule.
06Can you compare search results using a free proxy?
It is fine for learning and one-off trials. It is not recommended for a series spanning weeks: there is no address continuity, you don't know who operates the server, and you cannot isolate the source of the difference between two measurements. Ongoing work requires a paid pool.
07I got a verification screen — what should I do?
Stop. Instead of retrying at the same pace, increase the wait time exponentially and, if necessary, shrink your query budget for the day. A verification screen is a slow-down signal and should not be worked around; compliance with the terms of service is the user's responsibility.