You've reached the end of listings within 10 km of your location. Expand your search radius to find more businesses (you'll stay on the current page):
Account Details
Franchise Compatibility Assessment
Our 5 minute survey will create your custom business owner profile. Once complete, you will see a score for each franchise, telling you how similar you are to their best franchisees. This score will save you time in your research, and guide you towards choosing the right franchise. Watch a short explainer video.
There are no right or wrong answers, just select what you think describes you best! The two sections can be completed separately and your progress will be saved.
Enquiries & Invitations
Investment Calculator
Buying a franchise is typically funded by combining your savings with property equity you have, and financing the balance through a lender.
In addition to your savings and equity, banks can lend against the future cash flows of the business. This typically can be approximately 50% of the total investment required.
Notification Setting
Security
Culture determines the environment, strategies and practices that inspire and engage employees and you as a franchisee to perform optimally and is important to wider company morale and maintaining good relationships.
Great performance happens when cultural attributes are closely aligned with and support both the franchisor's and franchisee's goals. A culture that is congruent and clearly communicated provides endless benefits to everyone in the franchise organisation including greater effectiveness and brand equity.
A company that shares your cultural preferences will prove more compatible and help you reach your performance potential.
Matching your core values with a franchise's core values creates compatibility and harmony. Having shared values provides a solid foundation for a long-term business relationship.
Like-minded people have a basis for understanding, communicating and exercising judgment. Values alignment builds strong brand recognition.
Our research and that of others, show that there is a strong link between financial performance and values alignment. When the values of an organisation are in alignment with the aspirational values of you as a franchisee, the result is high performance.
For greatest satisfaction and effectiveness, you should seek a work or business environment consistent with your natural working tendencies.
Work Style translates into how you will delegate, direct, motivate, manage, evaluate and resolve day-to-day business situations.
Work Style is particularly important for you as a franchisee, as you will be held responsible for aligning your business with the pace, priorities and direction the franchise outlines for the system.
Stages of Growth are determined by a company's managerial style, organisational structure, formal systems, major strategic goals and founder/owner involvement.
As a franchise organisation grows, the systems and procedures will adapt to support an evolving business model, the needs of the franchisees and to satisfy end-user demands.
Within each stage of business, your skills and goals as a franchisee need to complement a franchisor's plans and market expansion strategies. A franchisee that is in-step with the franchise organisation's Stage of Growth will prove more compatible and likely perform better.
Your business skills and competencies are important. More important however, is how those competencies complement those a franchise is looking for to achieve high performance.
Having complementary skills and competencies provides a framework for forming collaborations between you and a franchisor. It reduces redundancy, makes wiser use of resources, provides points of correspondence and thus leads to greater value, compatibility and performance.
0 of 0array:11 [▼ "page" => "1" "validated_suburb" => "broken-hill" "validated_state" => "nsw" "validated_state_upper" => "NSW" "validated_postcode" => "2880" "validated_industry" => null "validated_business_type" => null "validated_min_investment" => 200000 "validated_max_investment" => 10000000 "validated_franchise_type" => null "validated_category" => null ]
[]
0 of 0array:20 [▼ "cookie" => array:1 [▶ 0 => "XSRF-TOKEN=Gvd9qVrFiXB9te9EfvyWSFBpvbSSwA3H1vezogV0; hattch_test_session=qZnIdAHiU1lzWufEoUSIHKJk7mQdQWRRvRcrtI7o" ] "priority" => array:1 [▶ 0 => "u=0, i" ] "accept-encoding" => array:1 [▶ 0 => "gzip, deflate, br, zstd" ] "sec-fetch-dest" => array:1 [▶ 0 => "document" ] "sec-fetch-user" => array:1 [▶ 0 => "?1" ] "sec-fetch-mode" => array:1 [▶ 0 => "navigate" ] "sec-fetch-site" => array:1 [▶ 0 => "none" ] "accept" => array:1 [▶ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "user-agent" => array:1 [▶ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "upgrade-insecure-requests" => array:1 [▶ 0 => "1" ] "sec-ch-ua-platform" => array:1 [▶ 0 => ""Windows"" ] "sec-ch-ua-mobile" => array:1 [▶ 0 => "?0" ] "sec-ch-ua" => array:1 [▶ 0 => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" ] "cache-control" => array:1 [▶ 0 => "no-cache" ] "pragma" => array:1 [▶ 0 => "no-cache" ] "x-amzn-trace-id" => array:1 [▶ 0 => "Root=1-682f1ab9-5ba907d657bd3c434d0b6854" ] "host" => array:1 [▶ 0 => "directory.testing.hattch.net" ] "x-forwarded-port" => array:1 [▶ 0 => "443" ] "x-forwarded-proto" => array:1 [▶ 0 => "https" ] "x-forwarded-for" => array:1 [▶ 0 => "3.142.83.70" ] ]
0 of 0array:2 [▼ "XSRF-TOKEN" => "Gvd9qVrFiXB9te9EfvyWSFBpvbSSwA3H1vezogV0" "hattch_test_session" => "qZnIdAHiU1lzWufEoUSIHKJk7mQdQWRRvRcrtI7o" ]
0 of 0array:3 [▼ "content-type" => array:1 [▶ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [▶ 0 => "no-cache, private" ] "date" => array:1 [▶ 0 => "Thu, 22 May 2025 12:38:18 GMT" ] ]
0 of 0array:4 [▼ "_token" => "Gvd9qVrFiXB9te9EfvyWSFBpvbSSwA3H1vezogV0" "PHPDEBUGBAR_STACK_DATA" => array:1 [▶ "01JVW00S5MRARV6EF5ARS2VCDH" => null ] "_previous" => array:1 [▶ "url" => "http://directory.testing.hattch.net/businesses-for-sale/between-200000-10000000/in-broken-hill-nsw-2880?page=23%20" ] "_flash" => array:2 [▶ "old" => [] "new" => [] ] ]
1 x Application (94.6%) | 369ms |
1 x Booting (5.4%) | 21.06ms |
1 x Routing (0.62%) | 2.42ms |
17 x View (0%) | 0μs |
Backtrace |
|
select exists(select * from `post_codes` where (`suburb` = 'broken hill' and `postcode` = '2880' and (`state` = 'NSW' or `state` = 'nsw'))) as `exists`
Bindings |
|
Backtrace |
|
select `to_postcode` from `distances` where `from_postcode` in ('2880') order by `distance_km` asc
Bindings |
|
Backtrace |
|
select count(*) as aggregate from `listings` inner join `brands` on `listings`.`brand_id` = `brands`.`id` inner join `post_codes` on `listings`.`post_code_id` = `post_codes`.`id` inner join `industries` on `brands`.`industry_id` = `industries`.`id` left join `homepages` on `brands`.`id` = `homepages`.`brand_id` left join `distances` on `post_codes`.`postcode` = `distances`.`to_postcode` and `distances`.`from_postcode` in ('2880') where `listings`.`status` = 'open' and (`homepages`.`page_published` = '1' or `homepages`.`page_published` is null) and `listings`.`min_investment` >= 200000 and `listings`.`min_investment` <= 10000000 and `post_codes`.`postcode` in (2880, 2880, '2880')
Bindings |
|
Backtrace |
|
select distinct `listings`.*, `brands`.`id` as `brand_id`, `brands`.`name` as `brand_name`, `brands`.`brand_subdomain`, `industries`.`industry`, `industries`.`industry_slug`, `post_codes`.`suburb`, `post_codes`.`state`, `post_codes`.`postcode`, JSON_UNQUOTE(JSON_EXTRACT(homepages.section1, "$.mobile_listing_image")) as mobile_listing_image, `distances`.`distance_km` from `listings` inner join `brands` on `listings`.`brand_id` = `brands`.`id` inner join `post_codes` on `listings`.`post_code_id` = `post_codes`.`id` inner join `industries` on `brands`.`industry_id` = `industries`.`id` left join `homepages` on `brands`.`id` = `homepages`.`brand_id` left join `distances` on `post_codes`.`postcode` = `distances`.`to_postcode` and `distances`.`from_postcode` in ('2880') where `listings`.`status` = 'open' and (`homepages`.`page_published` = '1' or `homepages`.`page_published` is null) and `listings`.`min_investment` >= 200000 and `listings`.`min_investment` <= 10000000 and `post_codes`.`postcode` in (2880, 2880, '2880') order by CASE WHEN post_codes.postcode IN ('2880') THEN 0 ELSE 1 END, `distances`.`distance_km` asc, `post_codes`.`postcode` asc limit 36 offset 0
Bindings |
|
Backtrace |
|
select * from `brands` where `brands`.`id` in (7017948)
Backtrace |
|
select * from `homepages` where `homepages`.`brand_id` in (7017948)
Backtrace |
|
select * from `industries` where `industries`.`id` in (1) and `industries`.`deleted_at` is null
Backtrace |
|
select * from `post_codes` where `post_codes`.`id` in (559)
Backtrace |
|
select `to_postcode` from `distances` where `from_postcode` in ('2880') and `distance_km` <= 10 order by `distance_km` asc
Bindings |
|
Backtrace |
|
select count(*) as aggregate from (select distinct `listings`.*, `brands`.`name` as `brand_name`, `brands`.`brand_subdomain`, `brands`.`minimum_investment`, `brands`.`maximum_investment`, `brands`.`country_code`, `industries`.`industry`, `industries`.`industry_slug`, `post_codes`.`suburb`, `post_codes`.`state`, `post_codes`.`postcode`, JSON_UNQUOTE(JSON_EXTRACT(homepages.section1, "$.mobile_brand_logo")) as mobile_brand_logo, JSON_UNQUOTE(JSON_EXTRACT(homepages.section1, "$.mobile_listing_image")) as mobile_listing_image, JSON_UNQUOTE(JSON_EXTRACT(homepages.section2, "$.business_intro_subtext")) as business_intro_subtext from `listings` inner join `brands` on `listings`.`brand_id` = `brands`.`id` inner join `post_codes` on `listings`.`post_code_id` = `post_codes`.`id` inner join `industries` on `brands`.`industry_id` = `industries`.`id` left join `homepages` on `brands`.`id` = `homepages`.`brand_id` left join `distances` on `post_codes`.`postcode` = `distances`.`to_postcode` and `distances`.`from_postcode` in ('2880') where `listings`.`status` = 'open' and (`homepages`.`page_published` = '1' or `homepages`.`page_published` is null) and `listings`.`min_investment` >= 200000 and `listings`.`min_investment` <= 10000000 and `post_codes`.`postcode` in (2880, 2880, '2880') group by `brands`.`id`) as `aggregate_table`
Bindings |
|
Backtrace |
|
select distinct `listings`.*, `brands`.`name` as `brand_name`, `brands`.`brand_subdomain`, `brands`.`minimum_investment`, `brands`.`maximum_investment`, `brands`.`country_code`, `industries`.`industry`, `industries`.`industry_slug`, `post_codes`.`suburb`, `post_codes`.`state`, `post_codes`.`postcode`, JSON_UNQUOTE(JSON_EXTRACT(homepages.section1, "$.mobile_brand_logo")) as mobile_brand_logo, JSON_UNQUOTE(JSON_EXTRACT(homepages.section1, "$.mobile_listing_image")) as mobile_listing_image, JSON_UNQUOTE(JSON_EXTRACT(homepages.section2, "$.business_intro_subtext")) as business_intro_subtext from `listings` inner join `brands` on `listings`.`brand_id` = `brands`.`id` inner join `post_codes` on `listings`.`post_code_id` = `post_codes`.`id` inner join `industries` on `brands`.`industry_id` = `industries`.`id` left join `homepages` on `brands`.`id` = `homepages`.`brand_id` left join `distances` on `post_codes`.`postcode` = `distances`.`to_postcode` and `distances`.`from_postcode` in ('2880') where `listings`.`status` = 'open' and (`homepages`.`page_published` = '1' or `homepages`.`page_published` is null) and `listings`.`min_investment` >= 200000 and `listings`.`min_investment` <= 10000000 and `post_codes`.`postcode` in (2880, 2880, '2880') group by `brands`.`id` order by CASE WHEN post_codes.postcode IN ('2880') THEN 0 ELSE 1 END, `distances`.`distance_km` asc limit 36 offset 0
Bindings |
|
Backtrace |
|
select * from `brands` where `brands`.`id` in (7017948)
Backtrace |
|
select * from `homepages` where `homepages`.`brand_id` in (7017948)
Backtrace |
|
select * from `industries` where `industries`.`id` in (1) and `industries`.`deleted_at` is null
Backtrace |
|
select * from `post_codes` where `post_codes`.`id` in (559)
Backtrace |
|
select * from `post_codes` where `suburb` = 'broken hill' and `state` = 'NSW' and `postcode` = '2880' limit 1
Bindings |
|
Backtrace |
|
select count(*) as aggregate from `listings` inner join `brands` on `listings`.`brand_id` = `brands`.`id` inner join `post_codes` on `listings`.`post_code_id` = `post_codes`.`id` inner join `industries` on `brands`.`industry_id` = `industries`.`id` left join `homepages` on `brands`.`id` = `homepages`.`brand_id` where `listings`.`status` = 'open' and (`homepages`.`page_published` = '1' or `homepages`.`page_published` is null)
Bindings |
|
Backtrace |
|
select distinct `listings`.* from `listings` inner join `brands` on `listings`.`brand_id` = `brands`.`id` inner join `post_codes` on `listings`.`post_code_id` = `post_codes`.`id` inner join `industries` on `brands`.`industry_id` = `industries`.`id` left join `homepages` on `brands`.`id` = `homepages`.`brand_id` where `listings`.`status` = 'open' and (`homepages`.`page_published` = '1' or `homepages`.`page_published` is null) order by `post_codes`.`postcode` asc limit 36 offset 0
Bindings |
|
Backtrace |
|
select count(*) as aggregate from (select distinct `listings`.*, `brands`.`name` as `brand_name`, `brands`.`brand_subdomain`, `brands`.`minimum_investment`, `brands`.`maximum_investment`, `brands`.`country_code`, `industries`.`industry`, `industries`.`industry_slug`, `post_codes`.`suburb`, `post_codes`.`state`, `post_codes`.`postcode`, JSON_UNQUOTE(JSON_EXTRACT(homepages.section1, "$.mobile_brand_logo")) as mobile_brand_logo, JSON_UNQUOTE(JSON_EXTRACT(homepages.section1, "$.mobile_listing_image")) as mobile_listing_image, JSON_UNQUOTE(JSON_EXTRACT(homepages.section2, "$.business_intro_subtext")) as business_intro_subtext from `listings` inner join `brands` on `listings`.`brand_id` = `brands`.`id` inner join `post_codes` on `listings`.`post_code_id` = `post_codes`.`id` inner join `industries` on `brands`.`industry_id` = `industries`.`id` left join `homepages` on `brands`.`id` = `homepages`.`brand_id` where `listings`.`status` = 'open' and (`homepages`.`page_published` = '1' or `homepages`.`page_published` is null) group by `brands`.`id`) as `aggregate_table`
Bindings |
|
Backtrace |
|
select distinct `listings`.*, `brands`.`name` as `brand_name`, `brands`.`brand_subdomain`, `brands`.`minimum_investment`, `brands`.`maximum_investment`, `brands`.`country_code`, `industries`.`industry`, `industries`.`industry_slug`, `post_codes`.`suburb`, `post_codes`.`state`, `post_codes`.`postcode`, JSON_UNQUOTE(JSON_EXTRACT(homepages.section1, "$.mobile_brand_logo")) as mobile_brand_logo, JSON_UNQUOTE(JSON_EXTRACT(homepages.section1, "$.mobile_listing_image")) as mobile_listing_image, JSON_UNQUOTE(JSON_EXTRACT(homepages.section2, "$.business_intro_subtext")) as business_intro_subtext from `listings` inner join `brands` on `listings`.`brand_id` = `brands`.`id` inner join `post_codes` on `listings`.`post_code_id` = `post_codes`.`id` inner join `industries` on `brands`.`industry_id` = `industries`.`id` left join `homepages` on `brands`.`id` = `homepages`.`brand_id` where `listings`.`status` = 'open' and (`homepages`.`page_published` = '1' or `homepages`.`page_published` is null) group by `brands`.`id` order by `listings`.`created_at` desc limit 36 offset 0
Bindings |
|
Backtrace |
|
select * from `brands` where `brands`.`id` in (7017918, 7017929, 7017930, 7017931, 7017932, 7017934, 7017937, 7017940, 7017941, 7017943, 7017944, 7017945, 7017946, 7017947, 7017948, 7017949, 7017950, 7017951, 7017953, 7017956, 7017959, 7017960, 7017962, 7017963, 7017964, 7017965, 7017967, 7017968, 7017969, 7017970, 7017971, 7017972, 7017973, 7017978, 7017981, 7017984)
Backtrace |
|
select * from `homepages` where `homepages`.`brand_id` in (7017918, 7017929, 7017930, 7017931, 7017932, 7017934, 7017937, 7017940, 7017941, 7017943, 7017944, 7017945, 7017946, 7017947, 7017948, 7017949, 7017950, 7017951, 7017953, 7017956, 7017959, 7017960, 7017962, 7017963, 7017964, 7017965, 7017967, 7017968, 7017969, 7017970, 7017971, 7017972, 7017973, 7017978, 7017981, 7017984)
Backtrace |
|
select * from `industries` where `industries`.`id` in (1, 2, 3, 4, 5, 6, 7, 8) and `industries`.`deleted_at` is null
Backtrace |
|
select * from `post_codes` where `post_codes`.`id` in (41, 376, 1020, 2889, 3068, 3198, 3722, 4865, 5416, 5691, 5857, 5863, 6138, 6215, 6706, 6889, 7249, 7260, 7791, 7914, 8057, 8821, 9080, 12176, 12992, 14301, 14630, 15176, 15242)
Backtrace |
|
select * from `post_codes` where `postcode` = '2880' limit 1
Bindings |
|
Backtrace |
|
select count(*) as aggregate from (select distinct `listings`.`id`, `listings`.`name`, `listings`.`overview`, `listings`.`min_investment`, `listings`.`max_investment`, `listings`.`new`, `listings`.`status`, `listings`.`post_code_id`, `listings`.`brand_id`, `listings`.`created_at`, `listings`.`updated_at`, `listings`.`category_id`, `brands`.`id` as `brand_id_relation`, `brands`.`name` as `brand_name`, `brands`.`brand_subdomain`, `industries`.`industry`, `industries`.`industry_slug`, `post_codes`.`suburb`, `post_codes`.`state`, `post_codes`.`postcode`, (6751 * acos(cos(radians(-32.35272)) * cos(radians(post_codes.lat)) * cos(radians(post_codes.lng) - radians(141.62697)) + sin(radians(-32.35272)) * sin(radians(post_codes.lat)))) AS distance_km, JSON_UNQUOTE(JSON_EXTRACT(homepages.section1, "$.mobile_listing_image")) as mobile_listing_image from `listings` inner join `brands` on `listings`.`brand_id` = `brands`.`id` inner join `post_codes` on `listings`.`post_code_id` = `post_codes`.`id` inner join `industries` on `brands`.`industry_id` = `industries`.`id` left join `homepages` on `brands`.`id` = `homepages`.`brand_id` where `listings`.`status` = 'open' and (`homepages`.`page_published` = '1' or `homepages`.`page_published` is null) and `listings`.`min_investment` >= 200000 and `listings`.`min_investment` <= 10000000 having distance_km <= 10) as `aggregate_table`
Bindings |
|
Backtrace |
|
select distinct `listings`.`id`, `listings`.`name`, `listings`.`overview`, `listings`.`min_investment`, `listings`.`max_investment`, `listings`.`new`, `listings`.`status`, `listings`.`post_code_id`, `listings`.`brand_id`, `listings`.`created_at`, `listings`.`updated_at`, `listings`.`category_id`, `brands`.`id` as `brand_id_relation`, `brands`.`name` as `brand_name`, `brands`.`brand_subdomain`, `industries`.`industry`, `industries`.`industry_slug`, `post_codes`.`suburb`, `post_codes`.`state`, `post_codes`.`postcode`, (6751 * acos(cos(radians(-32.35272)) * cos(radians(post_codes.lat)) * cos(radians(post_codes.lng) - radians(141.62697)) + sin(radians(-32.35272)) * sin(radians(post_codes.lat)))) AS distance_km, JSON_UNQUOTE(JSON_EXTRACT(homepages.section1, "$.mobile_listing_image")) as mobile_listing_image from `listings` inner join `brands` on `listings`.`brand_id` = `brands`.`id` inner join `post_codes` on `listings`.`post_code_id` = `post_codes`.`id` inner join `industries` on `brands`.`industry_id` = `industries`.`id` left join `homepages` on `brands`.`id` = `homepages`.`brand_id` where `listings`.`status` = 'open' and (`homepages`.`page_published` = '1' or `homepages`.`page_published` is null) and `listings`.`min_investment` >= 200000 and `listings`.`min_investment` <= 10000000 having distance_km <= 10 order by `distance_km` asc limit 36 offset 0
Bindings |
|
Backtrace |
|
select * from `brands` where `brands`.`id` in (7017948)
Backtrace |
|
select * from `homepages` where `homepages`.`brand_id` in (7017948)
Backtrace |
|
select * from `industries` where `industries`.`id` in (1) and `industries`.`deleted_at` is null
Backtrace |
|
select * from `post_codes` where `post_codes`.`id` in (559)
Backtrace |
|
select * from `post_codes` where `id` = 559 limit 1
Bindings |
|
Backtrace |
|
select * from `brands` where `id` = 7017948 limit 1
Bindings |
|
Backtrace |
|
select * from `listings` where `id` = 4018929 limit 1
Bindings |
|
Backtrace |
|
select * from `post_codes` where `id` = 559 limit 1
Bindings |
|
Backtrace |
|
SELECT `listings`.`id`, `post_codes`.`postcode` as `postcode`, `listings`.`name` as `name` from `listings`
INNER JOIN `brands`
ON `listings`.`brand_id` = `brands`.`id`
INNER JOIN `post_codes`
ON `listings`.`post_code_id` = `post_codes`.`id`
INNER JOIN `franchise_type_listing`
ON `listings`.`id` = `franchise_type_listing`.`listing_id`
INNER JOIN `homepages`
ON `listings`.`brand_id` = `homepages`.`brand_id`
WHERE
1=1
AND `listings`.`brand_id` = '7017948'
GROUP BY listings.id ORDER BY `post_codes`.`postcode` ASC;
Backtrace |
|
select * from `survey_questions` where `brand_id` = 7017948 and `brand_status` = 1 order by `sort_index` asc
Bindings |
|
Backtrace |
|
select * from `categories` where `id` = 1 limit 1
Bindings |
|
Backtrace |
|
select * from `industries` where `id` = 1 limit 1
Bindings |
|
Backtrace |
|
select * from `opportunities` where `brand_id` = 7017948 and `user_id` = 0 limit 1
Bindings |
|
Backtrace |
|
select * from `homepages` where `brand_id` = 7017948 limit 1
Bindings |
|
Backtrace |
|
select * from `post_codes` where `id` = 559 limit 1
Bindings |
|
Backtrace |
|
SELECT minimum_investment from `brands` GROUP BY minimum_investment ORDER BY minimum_investment ASC;
Backtrace |
|
SELECT maximum_investment from `brands` GROUP BY maximum_investment ORDER BY maximum_investment ASC;
Backtrace |
|
select * from `post_codes` where `id` = 559 limit 1
Bindings |
|
Backtrace |
|